diff --git a/example/core/reference/external.json b/example/core/reference/external.json new file mode 100644 index 000000000..4f9b80ff3 --- /dev/null +++ b/example/core/reference/external.json @@ -0,0 +1,5 @@ +{ + "measurementId": "mSrUn20260901ALSc1", + "sampleId": "aScN01448r0c00Xy1", + "unitId": "7c1e2f0a9b3d4e5f6a7b8c9d-build-loop" +} diff --git a/example/measurement.json b/example/measurement.json new file mode 100644 index 000000000..5f5d39fb5 --- /dev/null +++ b/example/measurement.json @@ -0,0 +1,46 @@ +{ + "_id": "mSrUn20260901ALSc1", + "_sample": { + "_id": "aScN01448r0c00Xy1", + "cls": "Sample", + "slug": "pdac-com5-01448-r0c00" + }, + "instrument": { + "name": "utk-asylum-cypher-1", + "description": { + "vendor": "Asylum Research", + "model": "Cypher", + "software": "afm-lib" + }, + "session": { + "name": "20260901_171601_alscn_01448", + "started": "2026-09-01T17:16:02Z", + "directory": "C:\\Users\\Asylum User\\Documents\\Asylum Research Data\\260831" + }, + "settings": { + "drive_amplitude_v": 1.0, + "bias_points": 64, + "loops_per_site": 8 + }, + "registration": { + "frame": "asylum-spm stage", + "units": "m", + "anchor": "100 um below the left bottom electrode", + "r0c00_stage_m": [ + 0.021064, + 0.020812999 + ] + } + }, + "metadata": { + "run_dir": "C:\\Users\\Asylum User\\Documents\\GitHub\\AFM_Combinatorial_Libraries\\runs\\20260901_171601_alscn_01448", + "recordsCount": 8 + }, + "name": "20260901_171601_alscn_01448", + "schemaVersion": "0.2.0", + "slug": "20260901-171601-alscn-01448", + "status": "finished", + "workflow": { + "...": "include(workflow.json)" + } +} diff --git a/example/measurement/instrument.json b/example/measurement/instrument.json new file mode 100644 index 000000000..458488937 --- /dev/null +++ b/example/measurement/instrument.json @@ -0,0 +1,27 @@ +{ + "name": "utk-asylum-cypher-1", + "description": { + "vendor": "Asylum Research", + "model": "Cypher", + "software": "afm-lib" + }, + "session": { + "name": "20260901_171601_alscn_01448", + "started": "2026-09-01T17:16:02Z", + "directory": "C:\\Users\\Asylum User\\Documents\\Asylum Research Data\\260831" + }, + "settings": { + "drive_amplitude_v": 1.0, + "bias_points": 64, + "loops_per_site": 8 + }, + "registration": { + "frame": "asylum-spm stage", + "units": "m", + "anchor": "100 um below the left bottom electrode", + "r0c00_stage_m": [ + 0.021064, + 0.020812999 + ] + } +} diff --git a/example/measurement/set.json b/example/measurement/set.json new file mode 100644 index 000000000..d51b1a077 --- /dev/null +++ b/example/measurement/set.json @@ -0,0 +1,10 @@ +{ + "isEntitySet": true, + "entitySetType": "ordered", + "entityCls": "Measurement", + "_sampleSet": { + "_id": "sSetPDACCOM501448", + "cls": "Sample", + "slug": "pdac-com5-01448" + } +} diff --git a/example/properties_directory/non-scalar/hysteresis_loop.json b/example/properties_directory/non-scalar/hysteresis_loop.json new file mode 100644 index 000000000..f49d8c83d --- /dev/null +++ b/example/properties_directory/non-scalar/hysteresis_loop.json @@ -0,0 +1,701 @@ +{ + "name": "hysteresis_loop", + "legend": [ + "on", + "off" + ], + "xAxis": { + "label": "bias", + "units": "V" + }, + "yAxis": { + "label": "response", + "units": "m" + }, + "xDataArray": [ + 1.20192, + 2.40385, + 3.60577, + 4.80769, + 6.00961, + 7.21154, + 8.41346, + 9.61539, + 10.8173, + 12.0192, + 13.2212, + 14.4231, + 15.625, + 16.8269, + 18.0288, + 19.2308, + 19.5673, + 18.3654, + 17.1635, + 15.9615, + 14.7596, + 13.5577, + 12.3558, + 11.1538, + 9.95192, + 8.75, + 7.54808, + 6.34615, + 5.14423, + 3.94231, + 2.74039, + 1.53846, + 0.336537, + -0.865384, + -2.06731, + -3.26923, + -4.47115, + -5.67308, + -6.875, + -8.07692, + -9.27885, + -10.4808, + -11.6827, + -12.8846, + -14.0865, + -15.2885, + -16.4904, + -17.6923, + -18.8942, + -19.9038, + -18.7019, + -17.5, + -16.2981, + -15.0962, + -13.8942, + -12.6923, + -11.4904, + -10.2885, + -9.08654, + -7.88462, + -6.68269, + -5.48077, + -4.27885, + -3.07692, + -1.875, + -0.673077, + 0.528846, + 1.73077, + 2.93269, + 4.13461, + 5.33654, + 6.53846, + 7.74039, + 8.94231, + 10.1442, + 11.3462, + 12.5481, + 13.75, + 14.9519, + 16.1538, + 17.3558, + 18.5577, + 19.7596, + 19.0385, + 17.8365, + 16.6346, + 15.4327, + 14.2308, + 13.0288, + 11.8269, + 10.625, + 9.42308, + 8.22115, + 7.01923, + 5.81731, + 4.61539, + 3.41346, + 2.21154, + 1.00961, + -0.192307, + -1.39423, + -2.59615, + -3.79808, + -5.0, + -6.20192, + -7.40385, + -8.60577, + -9.80769, + -11.0096, + -12.2115, + -13.4135, + -14.6154, + -15.8173, + -17.0192, + -18.2212, + -19.4231, + -19.375, + -18.1731, + -16.9712, + -15.7692, + -14.5673, + -13.3654, + -12.1635, + -10.9615, + -9.75962, + -8.55769, + -7.35577, + -6.15385, + -4.95192, + -3.75, + -2.54808, + -1.34615, + -0.144231, + 1.05769, + 2.25961, + 3.46154, + 4.66346, + 5.86539, + 7.06731, + 8.26923, + 9.47115, + 10.6731, + 11.875, + 13.0769, + 14.2788, + 15.4808, + 16.6827, + 17.8846, + 19.0865, + 19.7115, + 18.5096, + 17.3077, + 16.1058, + 14.9038, + 13.7019, + 12.5, + 11.2981, + 10.0962, + 8.89423, + 7.69231, + 6.49039, + 5.28846, + 4.08654, + 2.88461, + 1.68269, + 0.480769, + -0.721154, + -1.92308, + -3.125, + -4.32692, + -5.52885, + -6.73077, + -7.93269, + -9.13462, + -10.3365, + -11.5385, + -12.7404, + -13.9423, + -15.1442, + -16.3462, + -17.5481, + -18.75, + -19.9519, + -18.8462, + -17.6442, + -16.4423, + -15.2404, + -14.0385, + -12.8365, + -11.6346, + -10.4327, + -9.23077, + -8.02885, + -6.82692, + -5.625, + -4.42308, + -3.22115, + -2.01923 + ], + "yDataSeries": [ + [ + 2.7067e-10, + 3.43727e-10, + 4.17108e-10, + 4.77289e-10, + 5.32388e-10, + 5.79596e-10, + 6.24809e-10, + 6.61832e-10, + 6.98462e-10, + 7.30993e-10, + 7.63557e-10, + 7.98674e-10, + 8.29534e-10, + 8.63411e-10, + 8.887e-10, + 9.20652e-10, + 9.21695e-10, + 8.80891e-10, + 8.43738e-10, + 8.03401e-10, + 7.62573e-10, + 7.18925e-10, + 6.81222e-10, + 6.32928e-10, + 5.84974e-10, + 5.34979e-10, + 4.79443e-10, + 4.20389e-10, + 3.57738e-10, + 2.91616e-10, + 2.20564e-10, + 1.48069e-10, + 7.30952e-11, + 3.29133e-12, + -5.80898e-11, + -1.11795e-10, + -1.60607e-10, + -2.02787e-10, + -2.42349e-10, + -2.7952e-10, + -3.1582e-10, + -3.53609e-10, + -3.86647e-10, + -4.21641e-10, + -4.53402e-10, + -4.83528e-10, + -5.16028e-10, + -5.47231e-10, + -5.78852e-10, + -6.02987e-10, + -5.49701e-10, + -5.08528e-10, + -4.68442e-10, + -4.27919e-10, + -3.83805e-10, + -3.40192e-10, + -2.95684e-10, + -2.50059e-10, + -2.02482e-10, + -1.51353e-10, + -9.87699e-11, + -4.24764e-11, + 1.91664e-11, + 8.43303e-11, + 1.52023e-10, + 2.20326e-10, + 2.84717e-10, + 3.43661e-10, + 3.94267e-10, + 4.37121e-10, + 4.79405e-10, + 5.16516e-10, + 5.53751e-10, + 5.91107e-10, + 6.27672e-10, + 6.6037e-10, + 6.98175e-10, + 7.28398e-10, + 7.66648e-10, + 8.0065e-10, + 8.36584e-10, + 8.66081e-10, + 8.99792e-10, + 8.72467e-10, + 8.36049e-10, + 7.96997e-10, + 7.58506e-10, + 7.18546e-10, + 6.77449e-10, + 6.3361e-10, + 5.93596e-10, + 5.46657e-10, + 4.9523e-10, + 4.42582e-10, + 3.86584e-10, + 3.26483e-10, + 2.62618e-10, + 1.95991e-10, + 1.25953e-10, + 5.73735e-11, + -6.42764e-12, + -6.24288e-11, + -1.12384e-10, + -1.56527e-10, + -1.96608e-10, + -2.35829e-10, + -2.73505e-10, + -3.09523e-10, + -3.44914e-10, + -3.80621e-10, + -4.1484e-10, + -4.49146e-10, + -4.83256e-10, + -5.12168e-10, + -5.41102e-10, + -5.72105e-10, + -5.58904e-10, + -5.11986e-10, + -4.69288e-10, + -4.27903e-10, + -3.84942e-10, + -3.46951e-10, + -3.03218e-10, + -2.61793e-10, + -2.17078e-10, + -1.69952e-10, + -1.21017e-10, + -6.87156e-11, + -1.37561e-11, + 4.68326e-11, + 1.10493e-10, + 1.75156e-10, + 2.40635e-10, + 3.00113e-10, + 3.52681e-10, + 3.97036e-10, + 4.39482e-10, + 4.77115e-10, + 5.14797e-10, + 5.51377e-10, + 5.89004e-10, + 6.22529e-10, + 6.57697e-10, + 6.92107e-10, + 7.24515e-10, + 7.61409e-10, + 7.92525e-10, + 8.27643e-10, + 8.56915e-10, + 8.77273e-10, + 8.3633e-10, + 8.00425e-10, + 7.62858e-10, + 7.22021e-10, + 6.85171e-10, + 6.4194e-10, + 6.01668e-10, + 5.58183e-10, + 5.11179e-10, + 4.63127e-10, + 4.09545e-10, + 3.54724e-10, + 2.94899e-10, + 2.30449e-10, + 1.644e-10, + 9.78382e-11, + 3.33769e-11, + -2.58376e-11, + -7.56802e-11, + -1.21736e-10, + -1.63229e-10, + -1.99928e-10, + -2.3761e-10, + -2.75695e-10, + -3.11106e-10, + -3.43283e-10, + -3.78828e-10, + -4.15784e-10, + -4.47948e-10, + -4.78554e-10, + -5.14923e-10, + -5.37169e-10, + -5.66308e-10, + -5.2048e-10, + -4.82419e-10, + -4.40989e-10, + -4.02148e-10, + -3.59473e-10, + -3.21567e-10, + -2.79506e-10, + -2.36491e-10, + -1.9395e-10, + -1.44892e-10, + -9.70266e-11, + -4.509e-11, + 1.26783e-11, + 7.19689e-11, + 1.35595e-10 + ], + [ + -1.64063e-10, + -1.60103e-10, + -1.51936e-10, + -1.41196e-10, + -1.21421e-10, + -9.40815e-11, + -6.49944e-11, + -3.40422e-11, + -1.16721e-11, + 4.92151e-12, + 2.60466e-11, + 3.79564e-11, + 4.86376e-11, + 5.39352e-11, + 5.85865e-11, + 5.74397e-11, + 5.79713e-11, + 5.22842e-11, + 4.74628e-11, + 4.00973e-11, + 3.47253e-11, + 2.85547e-11, + 2.05068e-11, + 1.20448e-11, + 3.59505e-12, + -4.76362e-12, + -1.47286e-11, + -2.51546e-11, + -3.20371e-11, + -3.72617e-11, + -4.39241e-11, + -4.75609e-11, + -5.12586e-11, + -6.03925e-11, + -7.61497e-11, + -9.99957e-11, + -1.29939e-10, + -1.60242e-10, + -1.90566e-10, + -2.18586e-10, + -2.41915e-10, + -2.63762e-10, + -2.8286e-10, + -2.98204e-10, + -3.06581e-10, + -3.14312e-10, + -3.2e-10, + -3.24044e-10, + -3.28805e-10, + -3.29869e-10, + -3.25817e-10, + -3.22404e-10, + -3.20743e-10, + -3.18478e-10, + -3.14785e-10, + -3.11504e-10, + -3.0783e-10, + -3.00555e-10, + -2.96678e-10, + -2.89022e-10, + -2.80993e-10, + -2.75092e-10, + -2.71543e-10, + -2.67306e-10, + -2.60934e-10, + -2.55416e-10, + -2.49448e-10, + -2.36684e-10, + -2.16419e-10, + -1.88912e-10, + -1.58713e-10, + -1.3069e-10, + -1.03965e-10, + -8.27017e-11, + -6.10282e-11, + -4.43228e-11, + -2.75268e-11, + -1.49456e-11, + -3.53816e-12, + 4.97525e-12, + 1.23482e-11, + 1.87056e-11, + 2.16799e-11, + 2.25353e-11, + 2.02263e-11, + 1.74585e-11, + 1.35038e-11, + 8.40191e-12, + 2.73792e-12, + -3.19448e-12, + -1.06825e-11, + -1.79791e-11, + -2.57253e-11, + -3.36877e-11, + -4.12793e-11, + -4.81805e-11, + -5.39297e-11, + -5.92621e-11, + -6.39233e-11, + -6.76149e-11, + -7.80569e-11, + -9.66015e-11, + -1.20051e-10, + -1.47449e-10, + -1.73673e-10, + -1.98962e-10, + -2.19732e-10, + -2.40654e-10, + -2.57707e-10, + -2.72796e-10, + -2.84712e-10, + -2.94389e-10, + -3.02628e-10, + -3.03868e-10, + -3.1244e-10, + -3.11252e-10, + -3.07786e-10, + -3.11349e-10, + -3.04661e-10, + -3.01879e-10, + -2.98718e-10, + -2.96932e-10, + -2.91676e-10, + -2.87424e-10, + -2.83606e-10, + -2.7856e-10, + -2.72587e-10, + -2.65614e-10, + -2.62722e-10, + -2.5838e-10, + -2.54931e-10, + -2.49565e-10, + -2.45131e-10, + -2.35568e-10, + -2.19551e-10, + -1.96441e-10, + -1.68637e-10, + -1.42563e-10, + -1.19264e-10, + -9.64361e-11, + -7.74081e-11, + -5.98814e-11, + -4.60838e-11, + -3.32449e-11, + -2.0713e-11, + -1.29607e-11, + -5.44316e-12, + 5.31962e-13, + 5.19564e-12, + 8.50953e-12, + 6.03964e-12, + 4.80219e-12, + 3.29136e-12, + -1.51693e-12, + -5.00767e-12, + -9.281e-12, + -1.59506e-11, + -2.32972e-11, + -2.91384e-11, + -3.75897e-11, + -4.30144e-11, + -4.95511e-11, + -5.59639e-11, + -5.94251e-11, + -6.40112e-11, + -6.79308e-11, + -7.40984e-11, + -8.84928e-11, + -1.08553e-10, + -1.31977e-10, + -1.58705e-10, + -1.82929e-10, + -2.06298e-10, + -2.22741e-10, + -2.41527e-10, + -2.56774e-10, + -2.67697e-10, + -2.77716e-10, + -2.85878e-10, + -2.92823e-10, + -2.95229e-10, + -2.96206e-10, + -2.9886e-10, + -2.97973e-10, + -2.96114e-10, + -2.93259e-10, + -2.90471e-10, + -2.86182e-10, + -2.84411e-10, + -2.80976e-10, + -2.76009e-10, + -2.71553e-10, + -2.66765e-10, + -2.60681e-10, + -2.5685e-10, + -2.54596e-10, + -2.507e-10, + -2.45596e-10 + ] + ], + "parameters": { + "on": { + "imprint": { + "value": -0.0945645, + "standardDeviation": 0.201563, + "count": 8 + }, + "coerciveVoltage": { + "rising": { + "value": -1.69559, + "standardDeviation": 0.563452, + "count": 8 + }, + "falling": { + "value": 1.50646, + "standardDeviation": 0.390574, + "count": 8 + } + }, + "loopWidth": { + "value": 3.20206, + "standardDeviation": 0.881783, + "count": 8 + }, + "loopHeight": { + "value": 1.87428e-10, + "standardDeviation": 7.31456e-11, + "count": 8 + }, + "remanentResponse": { + "rising": { + "value": 2.52078e-10, + "standardDeviation": 3.3268e-11, + "count": 8 + }, + "falling": { + "value": 6.465e-11, + "standardDeviation": 4.74947e-11, + "count": 8 + } + } + }, + "off": { + "imprint": { + "value": 0.264414, + "standardDeviation": 0.199464, + "count": 8 + }, + "coerciveVoltage": { + "rising": { + "value": 5.54018, + "standardDeviation": 0.390596, + "count": 8 + }, + "falling": { + "value": -5.01135, + "standardDeviation": 0.462897, + "count": 8 + } + }, + "loopWidth": { + "value": 10.5515, + "standardDeviation": 0.757981, + "count": 8 + }, + "loopHeight": { + "value": 1.84282e-10, + "standardDeviation": 7.23293e-11, + "count": 8 + }, + "remanentResponse": { + "rising": { + "value": -2.48029e-10, + "standardDeviation": 3.33361e-11, + "count": 8 + }, + "falling": { + "value": -6.37461e-11, + "standardDeviation": 4.74305e-11, + "count": 8 + } + } + } + } +} diff --git a/example/sample.json b/example/sample.json new file mode 100644 index 000000000..862150bec --- /dev/null +++ b/example/sample.json @@ -0,0 +1,15 @@ +{ + "_id": "aScN01448r0c00Xy1", + "label": "r0c00", + "metadata": {}, + "name": "PDAC_COM5_01448 r0c00", + "position": { + "coordinates": [ + 0.021064, + 0.020812999 + ], + "units": "m" + }, + "schemaVersion": "0.2.0", + "slug": "pdac-com5-01448-r0c00" +} diff --git a/manifest/properties.yaml b/manifest/properties.yaml index 1555fa0ad..743bb7f05 100644 --- a/manifest/properties.yaml +++ b/manifest/properties.yaml @@ -254,6 +254,18 @@ dielectric_tensor: schemaId: properties-directory/non-scalar/dielectric-tensor isResult: true +hysteresis_loop: + defaults: + xAxis: + label: bias + units: V + yAxis: + label: response + units: m + + schemaId: properties-directory/non-scalar/hysteresis-loop + isResult: true + # STRUCTURAL basis: defaults: diff --git a/plan/context/2026-08-16-schema-graph-measurements.md b/plan/context/2026-08-16-schema-graph-measurements.md index 0bc0acb78..9ad6ccc89 100644 --- a/plan/context/2026-08-16-schema-graph-measurements.md +++ b/plan/context/2026-08-16-schema-graph-measurements.md @@ -1,7 +1,7 @@ # Schema graph measurements > **Type:** context — measurements backing the entity-map/docs plans; not a plan itself. -> **Created:** 2026-08-16 · **Updated:** 2026-08-16 +> **Created:** 2026-08-16 · **Updated:** 2026-09-05 > **Epic:** [SOF-8025](https://mat3ra.atlassian.net/browse/SOF-8025) > **Measured by:** `npm run lint-entity-graph` (`src/js/scripts/buildEntityGraph.ts`), the > production extractor built under [SOF-8026](https://mat3ra.atlassian.net/browse/SOF-8026). @@ -12,6 +12,20 @@ edges between schemas. The extractor separates them, so the totals below superse figures (937 edges / 376 / 384 / 177): the difference is exactly those 20 same-document refs. The extractor is now the source of truth, and `tests/js/entityGraph.tests.ts` pins these numbers. +**Updated 2026-09-04 (SOF-8050).** Seven schemas added for experimental data — `sample`, `measurement`, +`core/reference/external`, `core/reusable/{field_condition,combined_value,hysteresis_loop_parameters}` and +`properties_directory/non-scalar/hysteresis_loop`, which carries the loop parameters itself — plus +`property/holder`'s `source.info` becoming a `oneOf` over the two reference kinds (its one *contains* +edge became two *variant* edges). Previous totals: 564 schemas / 917 edges (372 / 375 / 170). +The loop parameters reuse `combined_value` through `allOf` so their descriptions survive, and define their +`{rising, falling}` pair once in their own `definitions` — the two refs to it raise the same-document count to 22. + +**Updated 2026-09-05 (SOF-8050 S5a).** `measurement`'s `_samples` (array, required) is replaced by `_sample` +(required) and `_materials` (optional array) — a measurement is performed on one sample, mirroring `job/base.json`'s +`_material`; `workDir` moves into `metadata.run_dir`. One *contains* edge (`_samples[]`) is removed and two are +added (`_sample`, `_materials[]`), for a net +1 edge; schema and node counts are unchanged. Previous totals: 938 +edges (380 / 385 / 173). + Method: every `schema/**/*.json` is parsed and each `$ref` classified by its innermost enclosing structural keyword — inside an `allOf` item → *extends*; under `properties.` or `items` → *contains*; inside `oneOf`/`anyOf` → *variant*. Refs resolve as relative file paths after @@ -21,14 +35,14 @@ stripping JSON-pointer fragments (`file.json#/pointer`). | Measure | Value | | --- | --- | -| Schema files | 564 | -| Example files | 209 (a schema has a mirror example in 209/564 = 37% of cases) | -| Cross-schema reference edges | 917 | -| — of kind *extends* (`allOf`) | 372 | -| — of kind *contains* (`properties`/`items`) | 375 | -| — of kind *variant* (`oneOf`/`anyOf`) | 170 | -| Same-document refs (`#/…`), which are **not** edges | 20 | -| Edges carrying a JSON-pointer fragment | 144 (e.g. `enum_options.json#/physicsBased`) | +| Schema files | 571 | +| Example files | 213 (a schema has a mirror example in 213/571 = 37% of cases) | +| Cross-schema reference edges | 939 | +| — of kind *extends* (`allOf`) | 380 | +| — of kind *contains* (`properties`/`items`) | 386 | +| — of kind *variant* (`oneOf`/`anyOf`) | 173 | +| Same-document refs (`#/…`), which are **not** edges | 22 | +| Edges carrying a JSON-pointer fragment | 148 (e.g. `enum_options.json#/physicsBased`) | | Unresolvable refs | **0** | | Reference cycles | **0** (README's no-circular-refs rule holds in practice) | | Isolated schemas (no refs in or out) | 34 | @@ -37,9 +51,9 @@ stripping JSON-pointer fragments (`file.json#/pointer`). | Domain | Count | | Domain | Count | | --- | --- | --- | --- | --- | -| `properties_directory` | 85 | | `models_directory` | 14 | -| `methods_category` | 79 | | *(root files)* | 11 | -| `core` | 73 | | `software_directory` | 11 | +| `properties_directory` | 86 | | `models_directory` | 14 | +| `methods_category` | 79 | | *(root files)* | 13 | +| `core` | 77 | | `software_directory` | 11 | | `workflow` | 62 | | `software` | 10 | | `system` | 38 | | `material` | 7 | | `materials_category_components` | 31 | | `in_memory_entity` | 7 | @@ -59,15 +73,15 @@ directory forces a deliberate decision instead of silently landing in a catch-al | Layer | Count | What it holds | | --- | --- | --- | -| directory | 156 | `*_directory` catalogs of concrete instances | +| directory | 157 | `*_directory` catalogs of concrete instances | | category | 152 | `*_category` + `materials_category_components` taxonomies | | **entity-component** | **106** | sub-schemas of root entities, keyed by `ownerEntity` | | system | 38 | platform mixins (`system/*`) | -| reusable | 31 | `core/reusable` domain blocks | +| reusable | 34 | `core/reusable` domain blocks | | primitive | 23 | `core/primitive` custom scalars and arrays | | **application-parsing** | **17** | `apse/*` application formats and parsers | -| entity | 11 | root-level schemas (material, model, workflow, …) | -| reference | 10 | `core/reference` provenance | +| entity | 13 | root-level schemas (material, model, workflow, sample, measurement, …) | +| reference | 11 | `core/reference` provenance | | abstract | 9 | `core/abstract` unit-less mathematics | | in-memory-entity | 7 | behavioral mixins | | definition | 4 | `definitions/` shared vocabularies | @@ -79,24 +93,24 @@ application-parsing schemas. | Schema | In-degree | | --- | --- | -| `definitions/units` | 30 | -| `core/primitive/scalar` | 28 | +| `definitions/units` | 33 | +| `core/primitive/scalar` | 29 | | `core/reusable/energy` | 15 | | `workflow/unit/context/_base` | 15 | | `core/primitive/array_of_3_numbers` | 14 | | `materials_category_components/entities/core/three-dimensional/crystal` | 14 | -| `system/entity_reference` | 13 | +| `system/entity_reference` | 15 | | `core/reusable/categories` | 12 | | `method/unit_method` | 11 | | `method` (root) | 10 | -| `core/abstract/2d_plot` | 10 | +| `core/abstract/2d_plot` | 11 | | `methods_category/physical/qm/wf/enum_options` | 10 | ## Largest fan-out (out-degree) | Schema | Out-degree | | --- | --- | -| `property/holder` | 44 (the union over all property types) | +| `property/holder` | 46 (the union over all property types, plus the two source kinds) | | `properties_directory/non-scalar/total_energy_contributions` | 15 | | `workflow/unit/context/item` | 15 | | `apse/file/applications/espresso/7.2/pw.x` | 10 | diff --git a/schema/core/reference/external.json b/schema/core/reference/external.json new file mode 100644 index 000000000..5bfe5abd3 --- /dev/null +++ b/schema/core/reference/external.json @@ -0,0 +1,23 @@ +{ + "$id": "core/reference/external", + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": { + "measurementId": { + "description": "Measurement's identity", + "type": "string" + }, + "sampleId": { + "description": "Identity of the sample the result is about", + "type": "string" + }, + "unitId": { + "description": "Id of the unit that extracted the result", + "type": "string" + } + }, + "required": [ + "measurementId", + "unitId" + ] +} diff --git a/schema/core/reusable/combined_value.json b/schema/core/reusable/combined_value.json new file mode 100644 index 000000000..3c106128a --- /dev/null +++ b/schema/core/reusable/combined_value.json @@ -0,0 +1,29 @@ +{ + "$id": "core/reusable/combined-value", + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "Combined value schema", + "description": "A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in", + "type": "object", + "allOf": [ + { + "$ref": "../primitive/scalar.json" + } + ], + "properties": { + "value": { + "description": "mean over the combined measurements" + }, + "standardDeviation": { + "description": "population standard deviation over the combined measurements (not the standard error of the mean)", + "type": "number" + }, + "count": { + "description": "number of measurements combined", + "type": "integer" + } + }, + "required": [ + "standardDeviation", + "count" + ] +} diff --git a/schema/core/reusable/field_condition.json b/schema/core/reusable/field_condition.json new file mode 100644 index 000000000..789073d04 --- /dev/null +++ b/schema/core/reusable/field_condition.json @@ -0,0 +1,11 @@ +{ + "$id": "core/reusable/field-condition", + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "Field condition schema", + "description": "Whether a switching-spectroscopy reading was taken with the bias applied (on, in-field) or after each pulse at zero bias (off, out-of-field)", + "type": "string", + "enum": [ + "on", + "off" + ] +} diff --git a/schema/core/reusable/hysteresis_loop_parameters.json b/schema/core/reusable/hysteresis_loop_parameters.json new file mode 100644 index 000000000..aced3fe92 --- /dev/null +++ b/schema/core/reusable/hysteresis_loop_parameters.json @@ -0,0 +1,75 @@ +{ + "$id": "core/reusable/hysteresis-loop-parameters", + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "Hysteresis loop parameters schema", + "description": "Parameters read from a hysteresis loop, each combined over the loops measured at one field condition. Voltages are in the loop's xAxis units, responses in its yAxis units", + "type": "object", + "properties": { + "imprint": { + "description": "bias at the centre of the loop: half the sum of the two coercive voltages", + "allOf": [ + { + "$ref": "combined_value.json" + } + ] + }, + "coerciveVoltage": { + "description": "bias at which the response crosses the loop's offset, on the rising and the falling branch", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/branch-pair" + } + ] + }, + "loopWidth": { + "description": "bias separation of the two coercive voltages", + "allOf": [ + { + "$ref": "combined_value.json" + } + ] + }, + "loopHeight": { + "description": "response separation of the two remanent responses", + "allOf": [ + { + "$ref": "combined_value.json" + } + ] + }, + "remanentResponse": { + "description": "response at zero bias, on the rising and the falling branch", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/branch-pair" + } + ] + } + }, + "required": [ + "imprint", + "coerciveVoltage", + "loopWidth", + "loopHeight", + "remanentResponse" + ], + "definitions": { + "branch-pair": { + "type": "object", + "properties": { + "rising": { + "$ref": "combined_value.json" + }, + "falling": { + "$ref": "combined_value.json" + } + }, + "required": [ + "rising", + "falling" + ] + } + } +} diff --git a/schema/definitions/units.json b/schema/definitions/units.json index f614e7034..44c5088d7 100644 --- a/schema/definitions/units.json +++ b/schema/definitions/units.json @@ -43,6 +43,12 @@ ], "default": "angstrom" }, + "voltage": { + "enum": [ + "V", + "mV" + ] + }, "energy": { "enum": [ "kcal/mol", diff --git a/schema/measurement.json b/schema/measurement.json new file mode 100644 index 000000000..df1a98d65 --- /dev/null +++ b/schema/measurement.json @@ -0,0 +1,41 @@ +{ + "$id": "measurement", + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "measurement schema", + "description": "One procedure applied to one sample by an instrument, recorded once finished: the experimental analogue of a job.", + "type": "object", + "allOf": [ + { + "$ref": "in_memory_entity/named_defaultable_has_metadata.json" + } + ], + "properties": { + "_sample": { + "description": "The sample the measurement was performed on", + "$ref": "system/entity_reference.json" + }, + "workflow": { + "description": "The procedure: acquisition and analysis units, with the instrument as the application", + "$ref": "workflow.json" + }, + "instrument": { + "description": "The machine and sitting: the experimental analogue of a job's compute", + "$ref": "measurement/instrument.json" + }, + "status": { + "type": "string", + "description": "Status of the measurement; finished when it reaches the platform", + "allOf": [ + { + "$ref": "job/base.json#/properties/status" + } + ] + } + }, + "required": [ + "_sample", + "workflow", + "instrument", + "status" + ] +} diff --git a/schema/measurement/instrument.json b/schema/measurement/instrument.json new file mode 100644 index 000000000..ae99b3ac7 --- /dev/null +++ b/schema/measurement/instrument.json @@ -0,0 +1,56 @@ +{ + "$id": "measurement/instrument", + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "measurement instrument schema", + "description": "The machine a measurement was performed on and the sitting it belongs to: the experimental analogue of a job's compute. The technique is the workflow's application, not repeated here.", + "type": "object", + "properties": { + "name": { + "description": "Identity of the instrument, as a cluster's fqdn identifies a cluster", + "type": "string" + }, + "description": { + "description": "Vendor, model, serial and whatever else describes the machine", + "type": "object" + }, + "session": { + "description": "The sitting during which the measurement was taken", + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "started": { + "type": "string", + "format": "date-time" + }, + "finished": { + "type": "string", + "format": "date-time" + }, + "operator": { + "type": "string" + }, + "directory": { + "description": "Where the instrument wrote its raw data", + "type": "string" + } + } + }, + "settings": { + "description": "Instrument parameters as set for this measurement", + "type": "object" + }, + "environment": { + "description": "Conditions during the measurement: temperature, pressure, atmosphere", + "type": "object" + }, + "registration": { + "description": "How the instrument frame maps onto the sample: frame, anchor, coordinates", + "type": "object" + } + }, + "required": [ + "name" + ] +} diff --git a/schema/measurement/set.json b/schema/measurement/set.json new file mode 100644 index 000000000..59248b4fd --- /dev/null +++ b/schema/measurement/set.json @@ -0,0 +1,18 @@ +{ + "$id": "measurement/set", + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "measurement set schema", + "description": "A run: the measurements of one sitting, performed on one specimen (a sample set).", + "type": "object", + "allOf": [ + { + "$ref": "../system/set.json" + } + ], + "properties": { + "_sampleSet": { + "description": "The sample set (specimen) the run was performed on", + "$ref": "../system/entity_reference.json" + } + } +} diff --git a/schema/properties_directory/enum_options.json b/schema/properties_directory/enum_options.json index 2f15173f2..4b4d7c877 100644 --- a/schema/properties_directory/enum_options.json +++ b/schema/properties_directory/enum_options.json @@ -56,6 +56,7 @@ "hubbard_u", "hubbard_v", "hubbard_v_nn", + "hysteresis_loop", "is_relaxed", "jupyter_notebook_endpoint", "phonon_dispersions", diff --git a/schema/properties_directory/non-scalar/hysteresis_loop.json b/schema/properties_directory/non-scalar/hysteresis_loop.json new file mode 100644 index 000000000..cc2c7ed3c --- /dev/null +++ b/schema/properties_directory/non-scalar/hysteresis_loop.json @@ -0,0 +1,75 @@ +{ + "$id": "properties-directory/non-scalar/hysteresis-loop", + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "Hysteresis loop property schema", + "description": "Response of a sample versus applied bias, combined over the switching cycles measured at each field condition, with the loop parameters read from it", + "type": "object", + "allOf": [ + { + "$ref": "../../core/abstract/2d_plot.json" + } + ], + "properties": { + "xAxis": { + "type": "object", + "properties": { + "label": { + "enum": [ + "bias" + ] + }, + "units": { + "$ref": "../../definitions/units.json#/voltage" + } + } + }, + "yAxis": { + "type": "object", + "properties": { + "label": { + "enum": [ + "response" + ] + }, + "units": { + "$ref": "../../definitions/units.json#/length" + } + } + }, + "name": { + "enum": [ + "hysteresis_loop" + ] + }, + "legend": { + "description": "the field condition of each series in yDataSeries", + "type": "array", + "items": { + "$ref": "../../core/reusable/field_condition.json" + } + }, + "parameters": { + "description": "parameters read from the loop of each field condition; their voltages are in xAxis units and their responses in yAxis units", + "type": "object", + "properties": { + "on": { + "$ref": "../../core/reusable/hysteresis_loop_parameters.json" + }, + "off": { + "$ref": "../../core/reusable/hysteresis_loop_parameters.json" + } + }, + "required": [ + "on", + "off" + ] + } + }, + "required": [ + "name", + "legend", + "xAxis", + "yAxis", + "parameters" + ] +} diff --git a/schema/property/holder.json b/schema/property/holder.json index 5999bbaef..483475d18 100644 --- a/schema/property/holder.json +++ b/schema/property/holder.json @@ -141,6 +141,9 @@ { "$ref": "../properties_directory/non-scalar/final_structure.json" }, + { + "$ref": "../properties_directory/non-scalar/hysteresis_loop.json" + }, { "$ref": "../properties_directory/jupyter_notebook_endpoint.json" } @@ -157,7 +160,14 @@ "type": "string" }, "info": { - "$ref": "../core/reference/exabyte.json" + "oneOf": [ + { + "$ref": "../core/reference/exabyte.json" + }, + { + "$ref": "../core/reference/external.json" + } + ] } }, "required": [ diff --git a/schema/sample.json b/schema/sample.json new file mode 100644 index 000000000..88076e3b1 --- /dev/null +++ b/schema/sample.json @@ -0,0 +1,37 @@ +{ + "$id": "sample", + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "sample schema", + "description": "A physical specimen at a fixed position on a substrate: the entity an experimental result is about. It has no crystal structure of its own; a material it is later matched to is referenced from its properties.", + "type": "object", + "allOf": [ + { + "$ref": "in_memory_entity/named_defaultable_has_metadata.json" + } + ], + "properties": { + "label": { + "description": "Identity of the sample on its substrate, e.g. the grid label r0c00 of a contact pad", + "type": "string" + }, + "position": { + "description": "Position of the sample in the substrate frame, when it is a site on a larger specimen", + "type": "object", + "properties": { + "coordinates": { + "$ref": "core/primitive/array_of_2_numbers.json" + }, + "units": { + "$ref": "definitions/units.json#/length" + } + }, + "required": [ + "coordinates", + "units" + ] + } + }, + "required": [ + "label" + ] +} diff --git a/src/js/scripts/buildEntityGraph.ts b/src/js/scripts/buildEntityGraph.ts index 13ec81939..a9015086e 100644 --- a/src/js/scripts/buildEntityGraph.ts +++ b/src/js/scripts/buildEntityGraph.ts @@ -121,6 +121,7 @@ const ENTITY_DOMAINS = [ "job", "software", "compute", + "measurement", ]; /** diff --git a/src/py/mat3ra/esse/data/examples.py b/src/py/mat3ra/esse/data/examples.py index ef60c96db..0a9dd8ed7 100644 --- a/src/py/mat3ra/esse/data/examples.py +++ b/src/py/mat3ra/esse/data/examples.py @@ -1,2 +1,2 @@ import json -EXAMPLES = json.loads(r'''[{"data":{"builder_meta":{"emmet_version":"0.84.3rc4","pymatgen_version":"2024.11.13","run_id":"32bfb79c-5ce0-41ab-ab69-69ba9fb96205","batch_id":null,"database_version":"2025.09.25","build_date":"2024-11-21T23:02:44.639000","license":"BY-C"},"nsites":44,"elements":["Cr","O","U"],"nelements":3,"composition":{"U":4,"Cr":4,"O":36},"composition_reduced":{"U":1,"Cr":1,"O":9},"formula_pretty":"UCrO9","formula_anonymous":"ABC9","chemsys":"Cr-O-U","volume":845.85269949399,"density":3.408189243856006,"density_atomic":19.223924988499775,"symmetry":{"crystal_system":"Monoclinic","symbol":"P2_1","hall":null,"number":4,"point_group":"2","symprec":0.1,"angle_tolerance":5,"version":"2.5.0"},"material_id":"mp-1179331","deprecated":false,"deprecation_reasons":null,"last_updated":"2025-09-23T22:41:33.498000","origins":[{"name":"structure","task_id":"mp-1894950","last_updated":"2021-02-08T10:46:04.704000"},{"name":"energy","task_id":"mp-1894950","last_updated":"2025-04-07T18:46:08.486000"},{"name":"electronic_structure","task_id":"mp-1894950","last_updated":"2021-02-08T10:46:04.704000"},{"name":"magnetism","task_id":"mp-1894950","last_updated":"2021-02-08T10:46:04.704000"}],"warnings":[],"structure":{"@module":"pymatgen.core.structure","@class":"Structure","charge":0,"lattice":{"matrix":[[9.695389,0,-0.217703999999999],[0,7.301272,0],[0.229925,0,11.943821]],"pbc":[true,true,true],"a":9.697832896731981,"b":7.301272,"c":11.946033885171513,"alpha":90,"beta":90.18348688985984,"gamma":90,"volume":845.85269949399},"properties":{},"sites":[{"species":[{"element":"U","occu":1}],"abc":[0.34232,0.192423999999999,0.873390999999999],"properties":{"magmom":-0.005},"label":"U","xyz":[3.519739988155,1.404939963327992,10.357101333730988]},{"species":[{"element":"U","occu":1}],"abc":[0.65768,0.692423999999999,0.126609],"properties":{"magmom":-0.006},"label":"U","xyz":[6.405574011845001,5.055575963327993,1.369015666269]},{"species":[{"element":"U","occu":1}],"abc":[0.073174999999999,0.183513999999999,0.30478000000000005],"properties":{"magmom":0.33},"label":"U","xyz":[0.7795366315749901,1.339885629807992,3.6243072741800013]},{"species":[{"element":"U","occu":1}],"abc":[0.926825,0.683514,0.6952200000000001],"properties":{"magmom":0.331},"label":"U","xyz":[9.145777368425001,4.990521629808,8.10180972582]},{"species":[{"element":"Cr","occu":1}],"abc":[0.445121999999999,0.6890200000000001,0.856606],"properties":{"magmom":-0.008},"label":"Cr","xyz":[4.51258607700799,5.03072243344,10.134243891638]},{"species":[{"element":"Cr","occu":1}],"abc":[0.554878,0.18902000000000002,0.143394],"properties":{"magmom":-0.008},"label":"Cr","xyz":[5.412727922992,1.38008643344,1.591873108362]},{"species":[{"element":"Cr","occu":1}],"abc":[0.114634,0.701735999999999,0.414016999999999],"properties":{"magmom":-0.055},"label":"Cr","xyz":[1.206614081350999,5.123565408191993,4.919988658620988]},{"species":[{"element":"Cr","occu":1}],"abc":[0.885366,0.201736,0.585982999999999],"properties":{"magmom":-0.055},"label":"Cr","xyz":[8.718699918649001,1.472929408192,6.806128341378989]},{"species":[{"element":"O","occu":1}],"abc":[0.043522,0.893138999999999,0.354294999999999],"properties":{"magmom":0.096},"label":"O","xyz":[0.5034239979329991,6.5210507728079925,4.222161147706989]},{"species":[{"element":"O","occu":1}],"abc":[0.956477999999999,0.393138999999999,0.645705],"properties":{"magmom":0.096},"label":"O","xyz":[9.421890002066991,2.870414772807993,7.503955852293001]},{"species":[{"element":"O","occu":1}],"abc":[0.160088999999999,0.190448999999999,0.9007600000000001],"properties":{"magmom":-0.001},"label":"O","xyz":[1.75923237262099,1.390519951127992,10.723664188304001]},{"species":[{"element":"O","occu":1}],"abc":[0.839911,0.690449,0.09924000000000001],"properties":{"magmom":-0.001},"label":"O","xyz":[8.166081627379,5.041155951128,1.002452811696001]},{"species":[{"element":"O","occu":1}],"abc":[0.208083,0.203714999999999,0.411352999999999],"properties":{"magmom":0.16},"label":"O","xyz":[2.112025967812,1.4873786254799921,4.86782609838099]},{"species":[{"element":"O","occu":1}],"abc":[0.791917,0.703715,0.588646999999999],"properties":{"magmom":0.161},"label":"O","xyz":[7.813288032188,5.138014625479999,6.8582909016189895]},{"species":[{"element":"O","occu":1}],"abc":[0.051286,0.517556,0.35074299999999903],"properties":{"magmom":0.061},"label":"O","xyz":[0.577882304528999,3.778817131232,4.178046441658989]},{"species":[{"element":"O","occu":1}],"abc":[0.948714,0.017556,0.649257],"properties":{"magmom":0.061},"label":"O","xyz":[9.347431695471,0.128181131231999,7.548070558341]},{"species":[{"element":"O","occu":1}],"abc":[0.345643,0.501618,0.8809],"properties":{"magmom":0},"label":"O","xyz":[3.553684272626999,3.662449458096,10.446064055228]},{"species":[{"element":"O","occu":1}],"abc":[0.654357,0.0016179999999990002,0.11910000000000001],"properties":{"magmom":0},"label":"O","xyz":[6.371629727373,0.011813458095992001,1.280052944772]},{"species":[{"element":"O","occu":1}],"abc":[0.518803999999999,0.193216,0.827388999999999],"properties":{"magmom":0.001},"label":"O","xyz":[5.220244010580991,1.410722570752,9.769240407352989]},{"species":[{"element":"O","occu":1}],"abc":[0.481195999999999,0.693215999999999,0.172611],"properties":{"magmom":0.001},"label":"O","xyz":[4.70506998941899,5.061358570751993,1.956876592647]},{"species":[{"element":"O","occu":1}],"abc":[0.580145,0.691645,0.946761],"properties":{"magmom":0.023},"label":"O","xyz":[5.84241547433,5.04988827244,11.181644026700999]},{"species":[{"element":"O","occu":1}],"abc":[0.419855,0.191644999999999,0.053238999999999],"properties":{"magmom":0.023},"label":"O","xyz":[4.08289852567,1.399252272439992,0.544472973298988]},{"species":[{"element":"O","occu":1}],"abc":[0.349993,0.882618999999999,0.872263999999999],"properties":{"magmom":0.004},"label":"O","xyz":[3.593873582477,6.444241391367993,10.34197020467199]},{"species":[{"element":"O","occu":1}],"abc":[0.650007,0.382619,0.127736],"properties":{"magmom":0.004},"label":"O","xyz":[6.331440417523001,2.793605391367999,1.384146795328]},{"species":[{"element":"O","occu":1}],"abc":[0.501463,0.680964,0.731358],"properties":{"magmom":0.013000000000000001},"label":"O","xyz":[5.030036342257,4.971903386208,8.626038537966]},{"species":[{"element":"O","occu":1}],"abc":[0.49853699999999906,0.18096399999999901,0.268642],"properties":{"magmom":0.013000000000000001},"label":"O","xyz":[4.895277657742992,1.321267386207992,3.100078462034]},{"species":[{"element":"O","occu":1}],"abc":[0.930782999999999,0.220374,0.206034],"properties":{"magmom":0.271},"label":"O","xyz":[9.071675627036992,1.609010515728,2.258198033682001]},{"species":[{"element":"O","occu":1}],"abc":[0.069217,0.720374,0.793966],"properties":{"magmom":0.271},"label":"O","xyz":[0.853638372962999,5.259646515728,9.467918966317999]},{"species":[{"element":"O","occu":1}],"abc":[0.080918999999999,0.703684,0.554352],"properties":{"magmom":0.065},"label":"O","xyz":[0.9120005660909901,5.137788286048,6.603464669016]},{"species":[{"element":"O","occu":1}],"abc":[0.919080999999999,0.203684,0.445648],"properties":{"magmom":0.065},"label":"O","xyz":[9.01331343390899,1.487152286048,5.122652330984001]},{"species":[{"element":"O","occu":1}],"abc":[0.278294,0.7107,0.398167],"properties":{"magmom":0.053},"label":"O","xyz":[2.789717133841,5.1890140104,4.695049659131]},{"species":[{"element":"O","occu":1}],"abc":[0.721706,0.2107,0.601833],"properties":{"magmom":0.053},"label":"O","xyz":[7.135596866159,1.5383780104,7.031067340869]},{"species":[{"element":"O","occu":1}],"abc":[0.17646799999999901,0.094245,0.180848999999999],"properties":{"magmom":0.513},"label":"O","xyz":[1.75250761237699,0.688108379639999,2.121610294556988]},{"species":[{"element":"O","occu":1}],"abc":[0.823531999999999,0.594245,0.819151],"properties":{"magmom":0.514},"label":"O","xyz":[8.172806387622991,4.33874437964,9.604506705443]},{"species":[{"element":"O","occu":1}],"abc":[0.18932000000000002,0.471528,0.143677],"properties":{"magmom":0.731},"label":"O","xyz":[1.868565979705,3.442754183616,1.674836648537]},{"species":[{"element":"O","occu":1}],"abc":[0.810681,0.971528,0.856323],"properties":{"magmom":0.734},"label":"O","xyz":[8.056757715684,7.093390183615999,10.051280133759]},{"species":[{"element":"O","occu":1}],"abc":[0.315463999999999,0.206185999999999,0.656413999999999],"properties":{"magmom":0.015},"label":"O","xyz":[3.20947218444599,1.505420068591992,7.771413543237989]},{"species":[{"element":"O","occu":1}],"abc":[0.684535999999999,0.706186,0.343586],"properties":{"magmom":0.016},"label":"O","xyz":[6.715841815553991,5.156056068592,3.954703456762001]},{"species":[{"element":"O","occu":1}],"abc":[0.36181,0.047728,0.615285],"properties":{"magmom":0.013000000000000001},"label":"O","xyz":[3.649358097715,0.348475110016,7.270086419745]},{"species":[{"element":"O","occu":1}],"abc":[0.63819,0.547728,0.384715],"properties":{"magmom":0.013000000000000001},"label":"O","xyz":[6.275955902285,3.999111110016,4.456030580255001]},{"species":[{"element":"O","occu":1}],"abc":[0.129413,0.600421,0.10017000000000001],"properties":{"magmom":0.797},"label":"O","xyz":[1.277740963907,4.383837035512,1.168238821818]},{"species":[{"element":"O","occu":1}],"abc":[0.870587,0.100421,0.89983],"properties":{"magmom":0.8},"label":"O","xyz":[8.647573036093,0.733201035512,10.557878178182001]},{"species":[{"element":"O","occu":1}],"abc":[0.42195000000000005,0.053349,0.522836],"properties":{"magmom":0.001},"label":"O","xyz":[4.21118245585,0.389515559927999,6.152799393556]},{"species":[{"element":"O","occu":1}],"abc":[0.5780500000000001,0.553349,0.477164],"properties":{"magmom":0.001},"label":"O","xyz":[5.714131544150001,4.040151559928,5.573317606444]}]},"property_name":"summary","task_ids":["mp-1894950","mp-1179331"],"uncorrected_energy_per_atom":-7.058860395227273,"energy_per_atom":-7.2405876679545464,"formation_energy_per_atom":-1.288214347499999,"energy_above_hull":0.5916241527727241,"is_stable":false,"equilibrium_reaction_energy_per_atom":null,"decomposes_to":[{"material_id":"mp-773920","formula":"Cr20 O48","amount":0.309090909090909},{"material_id":"mp-375","formula":"U1 O3","amount":0.36363636363636304},{"material_id":"mp-12957","formula":"O8","amount":0.32727272727272705}],"xas":null,"grain_boundaries":null,"band_gap":0,"cbm":null,"vbm":null,"efermi":-1.79489728,"is_gap_direct":false,"is_metal":true,"es_source_calc_id":null,"bandstructure":null,"dos":null,"dos_energy_up":null,"dos_energy_down":null,"is_magnetic":true,"ordering":"FiM","total_magnetization":7.2597574,"total_magnetization_normalized_vol":0.008582767903138,"total_magnetization_normalized_formula_units":1.81493935,"num_magnetic_sites":12,"num_unique_magnetic_sites":22,"types_of_magnetic_species":["U","Cr","O"],"bulk_modulus":null,"shear_modulus":null,"universal_anisotropy":null,"homogeneous_poisson":null,"e_total":null,"e_ionic":null,"e_electronic":null,"n":null,"e_ij_max":null,"weighted_surface_energy_EV_PER_ANG2":null,"weighted_surface_energy":null,"weighted_work_function":null,"surface_anisotropy":null,"shape_factor":null,"has_reconstructed":null,"possible_species":[],"has_props":{"materials":true,"thermo":true,"xas":false,"grain_boundaries":false,"chemenv":true,"electronic_structure":true,"absorption":false,"bandstructure":false,"dos":false,"magnetism":true,"elasticity":false,"dielectric":false,"piezoelectric":false,"surface_properties":false,"oxi_states":true,"provenance":true,"charge_density":true,"eos":false,"phonon":false,"insertion_electrodes":false,"substrates":false},"theoretical":true,"database_IDs":{}},"path":"apse/db/materials_project/2025.9.25/summary"},{"data":{"energy":-0.85663276,"energy_per_atom":-0.85663276,"volume":114.05180544066401,"formation_energy_per_atom":0.038769612068965564,"nsites":1,"unit_cell_formula":{"Cs":1},"pretty_formula":"Cs","is_hubbard":false,"elements":["Cs"],"nelements":1,"e_above_hull":0.038769612068965564,"hubbards":{},"is_compatible":true,"spacegroup":{"symprec":0.1,"source":"spglib","symbol":"Im-3m","number":229,"point_group":"m-3m","crystal_system":"cubic","hall":"-I 4 2 3"},"task_ids":["mp-990461","mp-990456","mp-990457","mp-1","mp-1056804","mp-1056825","mp-1056837","mp-1056840","mp-1439955","mp-1588651","mp-1686392"],"band_gap":0,"density":1.9350390306525629,"icsd_id":null,"icsd_ids":[626969,44754,76941,626975,426937],"cif":"# generated using pymatgen\ndata_Cs\n_symmetry_space_group_name_H-M 'P 1'\n_cell_length_a 5.29144986\n_cell_length_b 5.29144986\n_cell_length_c 5.29144986\n_cell_angle_alpha 109.47122063\n_cell_angle_beta 109.47122063\n_cell_angle_gamma 109.47122063\n_symmetry_Int_Tables_number 1\n_chemical_formula_structural Cs\n_chemical_formula_sum Cs1\n_cell_volume 114.05180544\n_cell_formula_units_Z 1\nloop_\n _symmetry_equiv_pos_site_id\n _symmetry_equiv_pos_as_xyz\n 1 'x, y, z'\nloop_\n _atom_site_type_symbol\n _atom_site_label\n _atom_site_symmetry_multiplicity\n _atom_site_fract_x\n _atom_site_fract_y\n _atom_site_fract_z\n _atom_site_occupancy\n Cs Cs0 1 0.00000000 0.00000000 0.00000000 1\n","total_magnetization":0.0023078,"material_id":"mp-1","oxide_type":"None","tags":["Cesium","Cesium - LT"],"elasticity":{"G_Reuss":0,"G_VRH":0,"G_Voigt":1,"G_Voigt_Reuss_Hill":0,"K_Reuss":2,"K_VRH":2,"K_Voigt":2,"K_Voigt_Reuss_Hill":2,"elastic_anisotropy":104.62,"elastic_tensor":[[2,2,2,0,0,0],[2,2,2,0,0,0],[2,2,2,0,0,0],[0,0,0,1,0,0],[0,0,0,0,1,0],[0,0,0,0,0,1]],"homogeneous_poisson":0.38,"poisson_ratio":0.38,"universal_anisotropy":104.62,"elastic_tensor_original":[[1.73311735771011,1.7018819040120994,1.7018819040120994,0,0,0],[1.701854348631678,1.7330667734495018,1.701854348631678,0,0,0],[1.7018998983082827,1.7018998983082827,1.73308559241878,0,0,0],[-0.0000012033337295666204,-0.0000013333337724174089,-0.000005220001719148464,1.3915437882900088,0,0],[-0.000004440001462244874,-0.0000054033351128359714,-0.000002403334124841945,0,1.3915428649563715,0],[-0.0000018466672748265455,-3.9333346287108985e-7,8.63333617692249e-7,0,0,1.3915430182897548]],"compliance_tensor":[[21424.8,-10615,-10615,0,0,0],[-10615,21424.8,-10615,0,0,0],[-10615,-10615,21424.8,0,0,0],[0,0,0,718.6,0,0],[0,0,0,0,718.6,0],[0,0,0,0,0,718.6]],"warnings":["c11 and c12 are within 5% or c12 is greater than c11","c11 and c13 are within 5% or c13 is greater than c11","c11 and c23 are within 5% or c23 is greater than c11","One or more K, G below 2 GPa"],"nsites":1},"piezo":null,"diel":null,"deprecated":false,"full_formula":"Cs1"},"path":"apse/db/materials_project/legacy/material"},{"data":{"phi":{"nelect":48,"phi":4.73414095269429,"scf_vbm":-1.6519,"scf_cbm":-1.6472,"Ef":-1.97822464,"scf_gap":0,"avg_max":2.7559163126942896,"scf_dir":false},"atoms":{"lattice_mat":[[3.353617811446221,0,0],[0,6.273423021773385,0],[0,0,33.313518]],"coords":[[0,0.6004615456553349,0.2002745956304112],[0.5,0.9651745521229684,0.205389889617873],[0,0.8600702878546368,0.2642586539633663],[0.5,0.3508476059345406,0.2471701152668883],[0.5,0.7055702442093444,0.1414059027438078],[0,0.2147957642231673,0.1584938427776558]],"elements":["Mo","Mo","Te","Te","Te","Te"],"abc":[3.35362,6.27342,33.31352],"angles":[90,90,90],"cartesian":false,"props":["","","","","",""]},"jid":"JVASP-677"},"path":"apse/db/nist_jarvis/2024.3.13/db_entry"},{"data":{"CONTROL":{"calculation":"scf","title":"","verbosity":"low","restart_mode":"from_scratch","wf_collect":true,"tstress":true,"tprnfor":true,"outdir":"{{ JOB_WORK_DIR }}/outdir","wfcdir":"{{ JOB_WORK_DIR }}/outdir","prefix":"__prefix__","pseudo_dir":"{{ JOB_WORK_DIR }}/pseudo"},"SYSTEM":{"ibrav":0,"nat":2,"ntyp":2,"ecutwfc":40,"ecutrho":200,"occupations":"smearing","degauss":0.005,"starting_magnetization":[0.01,0.02],"Hubbard_occ":[[1,1,0],[1,2,0.02]]},"ELECTRONS":{"diagonalization":"david","diago_david_ndim":4,"diago_full_acc":true,"mixing_beta":0.3,"startingwfc":"atomic+random"},"IONS":null,"CELL":null,"ATOMIC_SPECIES":{"values":[{"X":"Cs","Mass_X":132.90543,"PseudoPot_X":"Cs.upf"},{"X":"Cl","Mass_X":35.4527,"PseudoPot_X":"Cl.upf"}]},"CELL_PARAMETERS":{"card_option":"angstrom","values":{"v1":[4.324582724,0,2.496799],"v2":[1.441527575,4.077255694,2.496799],"v3":[0,0,4.993598]}},"K_POINTS":{"card_option":"automatic","values":{"nk1":2,"nk2":2,"nk3":2,"sk1":0,"sk2":0,"sk3":0}}},"path":"apse/file/applications/espresso/7.2/pw.x"},{"data":{"min_vacuum_size":0,"in_unit_planes":true,"reorient_lattice":true,"symmetrize":false},"path":"apse/materials/builders/slab/pymatgen/parameters"},{"data":{"xDataArray":[0,1,2],"yDataSeries":[[0,0.5,1],[0,2.5,5]]},"path":"core/abstract/2d_data"},{"data":{"xAxis":{"label":"kpoint index"},"xDataArray":[0,1,2],"yAxis":{"label":"eigenvalues","units":"eV"},"yDataSeries":[[0,0.5,1],[0,2.5,5]]},"path":"core/abstract/2d_plot"},{"data":{"dimensions":[2,2,2],"shifts":[0,0,0]},"path":"core/abstract/3d_grid"},{"data":[0,5.5,0],"path":"core/abstract/coordinate_3d"},{"data":[[1,0,0],[0,1,0],[0,0,1]],"path":"core/abstract/matrix_3x3"},{"data":[1,0],"path":"core/abstract/vector_2d"},{"data":[1,0,0],"path":"core/abstract/vector_3d"},{"data":[true,false,false],"path":"core/abstract/vector_boolean_3d"},{"data":[[0,0.5,1],[0,2.5,5]],"path":"core/primitive/1d_data_series"},{"data":[true,false,false],"path":"core/primitive/array_of_3_booleans"},{"data":[1,0,0],"path":"core/primitive/array_of_3_numbers"},{"data":[{"id":1},{"id":2}],"path":"core/primitive/array_of_ids"},{"data":{"label":"energy","units":"eV"},"path":"core/primitive/axis"},{"data":{"value":0.1},"path":"core/primitive/scalar"},{"data":{"value":"example string"},"path":"core/primitive/string"},{"data":{"name":"pressure","scalar":[{"value":"1.2"},{"value":"3.3"}],"units":"kbar"},"path":"core/reference/experiment/condition"},{"data":{"latitude":24.3423424,"longitude":43.234232},"path":"core/reference/experiment/location"},{"data":{"authors":[{"affiliation":"Exabyte Inc.","first":"John","last":"Doe"}],"conditions":[{"name":"pressure","scalar":[{"value":"1.2"},{"value":"3.3"}],"units":"kbar"}],"method":"DFT","references":[{"authors":[{"affiliation":"Exabyte Inc.","first":"John","last":"Doe"}],"doi":"10.1000/xyz123"}],"timestamp":141182979832,"title":"Experiment 1"},"path":"core/reference/experiment"},{"data":{"affiliation":"Exabyte Inc.","first":"John","last":"Doe"},"path":"core/reference/literature/name"},{"data":{"end":"2","start":"1"},"path":"core/reference/literature/pages"},{"data":{"authors":[{"affiliation":"Exabyte Inc.","first":"John","last":"Doe"}],"doi":"10.1000/xyz123"},"path":"core/reference/literature"},{"data":{"_id":"nDAavgjrT5ezwFgod","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"title":"My Calculation"},"path":"core/reference/modeling/exabyte"},{"data":{"_id":"nDAavgjrT5ezwFgod","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"title":"My Calculation"},"path":"core/reference/modeling"},{"data":{"_id":"nDAavgjrT5ezwFgod","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"title":"My Calculation"},"path":"core/reference"},{"data":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"path":"core/reusable/atomic_vectors"},{"data":{"kpointConduction":[0,0,0],"kpointValence":[0,0,0],"name":"band_gap","type":"direct","units":"Ry","value":0.0947},"path":"core/reusable/band_gap"},{"data":{"shape":"box","min_coordinate":[0,0,0],"max_coordinate":[0.5,0.5,0.5]},"path":"core/reusable/coordinate_conditions/box"},{"data":{"shape":"cylinder","radius":0.25,"min_z":0,"max_z":1},"path":"core/reusable/coordinate_conditions/cylinder"},{"data":{"shape":"plane","plane_normal":[0,0,1],"plane_point_coordinate":[0,0,0.5]},"path":"core/reusable/coordinate_conditions/plane"},{"data":{"shape":"sphere","radius":0.25},"path":"core/reusable/coordinate_conditions/sphere"},{"data":{"shape":"triangular_prism","position_on_surface_1":[0.25,0.25],"position_on_surface_2":[0.75,0.25],"position_on_surface_3":[0.5,0.75],"min_z":0,"max_z":1},"path":"core/reusable/coordinate_conditions/triangular_prism"},{"data":{"name":"zero_point_energy","units":"eV","value":-0.0634},"path":"core/reusable/energy"},{"data":{"pathname":"/path/to/file/","basename":"some_file.png","filetype":"image"},"path":"core/reusable/file_metadata"},{"data":{"formula":"SiC","n_atoms":4,"is_elemental":false,"total_energy":-520.004,"total_energy_per_atom":-130.001,"precision_value":8192,"precision_metric":"KPPRA"},"path":"core/reusable/formation_energy_contribution"},{"data":{"CONTAINER":"production-20160630-cluster-001","NAME":"/cluster-001-home/jrd101/data/jrd101-default/kernel-train-Cxmkj97aXKZeaRZov/Cxmkj97aXKZeaRZov.json","PROVIDER":"aws","REGION":"us-east-1","SIZE":6582,"TIMESTAMP":"1614217411"},"path":"core/reusable/object_storage_container_data"},{"data":{"properties":[{"name":"atomic_radius","value":4},{"name":"electronegativity","value":1.1},{"name":"ionization_potential","value":7.7,"units":"eV"}],"symbol":"Si"},"path":"element"},{"data":{"arguments":{"nband":1,"npools":1,"ntg":1},"cluster":{"fqdn":"master-1-staging.exabyte.io","jid":"1234.master-1-staging.exabyte.io"},"email":"demo@exabyte.io","errors":[{"domain":"rupy","message":"File Not Found: /home/demo/data/project1/job-123/job-config.json","reason":"FileNotFound"}],"excludeFilesPattern":"^.*.txt$","maxCPU":36,"nodes":1,"notify":"abe","ppn":1,"queue":"OF","timeLimit":"00:05:00"},"path":"job/compute"},{"data":{"_id":"FPjAaKfuYAL7tiHbm","_material":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Material","slug":"silicon-fcc"},"_project":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Project","slug":"project-default"},"compute":{"arguments":{"nband":1,"npools":1,"ntg":1},"cluster":{"fqdn":"master-1-staging.exabyte.io","jid":"1234.master-1-staging.exabyte.io"},"email":"demo@exabyte.io","errors":[{"domain":"rupy","message":"File Not Found: /home/demo/data/project1/job-123/job-config.json","reason":"FileNotFound"}],"excludeFilesPattern":"^.*.txt$","maxCPU":36,"nodes":1,"notify":"abe","ppn":1,"queue":"OF","timeLimit":"00:05:00"},"createdAt":"2018-11-19 06:41:46.877Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"name":"job","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"schemaVersion":"0.2.0","slug":"job","status":"pre-submission","workflow":{"_id":"FPjAaKfuYAL7tiHbm","createdAt":"2018-11-19 06:41:46.877Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"exabyteId":"qKtTzu9utCo6ac4n7","hash":"f4fd707d2e47c15f8d786cf159040954","isDefault":true,"name":"workflow","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"properties":["band_structure"],"schemaVersion":"0.2.0","slug":"workflow","subworkflows":[{"_id":"LCthJ6E2QabYCZqf4","application":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","build":"GNU","version":"6.3","hasAdvancedComputeOptions":true,"isUsingMaterial":true},"model":{"method":{"data":{"pseudo":[]},"subtype":"us","type":"pseudopotential"},"subtype":"gga","type":"dft","functional":"pbe"},"name":"Band Structure","properties":["band_structure"],"units":[{"application":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","build":"GNU","version":"6.3","hasAdvancedComputeOptions":true,"isUsingMaterial":true},"compute":null,"executable":{"name":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","advancedComputeOptions":true,"isDefault":true,"monitors":[{"name":"standard_output"}],"postProcessors":[],"preProcessors":[],"results":[{"name":"atomic_forces"}]},"flavor":{"name":"pw_scf","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","input":[{"name":"in.scf","templateId":"dJ7HYz5pQ4AuN5qc9"}],"postProcessors":[],"preProcessors":[],"monitors":[],"results":[]},"flowchartId":"execution","head":true,"input":[{"template":{"name":"kpoints_grid","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","content":"K_POINTS automatic\n{{nkx}} {{nky}} {{nkz}} 0 0 0","contextProviders":[{"name":"KGridManagerMixin"}]},"rendered":"K_POINTS automatic\n2 2 2 0 0 0","isManuallyChanged":false}],"monitors":[{"name":"scf_accuracy"},{"name":"standard_output"}],"name":"execution","next":"pw-bands","postProcessors":[],"preProcessors":[],"results":[{"name":"harris_foulkes_estimate"}],"status":"idle","type":"execution","context":[]}]}],"workflows":[],"tags":["workflow"],"units":[{"_id":"LCthJ6E2QabYCZqf4","flowchartId":"05c362dc27ff1bb98d16fd60","type":"subworkflow","name":"subworkflow unit","preProcessors":[],"postProcessors":[],"monitors":[],"results":[]}]}},"path":"job"},{"data":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"path":"material"},{"data":{"stack_components":[{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"direction":"z","size":20,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},"path":"materials_category/compound_pristine_structures/two-dimensional/interface/configuration"},{"data":{"stack_components":[{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"}],"direction":"x","actual_angle":45,"xy_shift":[0,0]},"path":"materials_category/defective_structures/one-dimensional/grain_boundary_linear/configuration"},{"data":{"stack_components":[{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate":[0.5,0.5,1.1],"element":{"chemical_element":"B"}},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},"path":"materials_category/defective_structures/two-dimensional/adatom/configuration"},{"data":{"stack_components":[{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"direction":"z","size":20,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},"path":"materials_category/defective_structures/two-dimensional/grain_boundary_planar/configuration"},{"data":{"stack_components":[{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"merge_components":[{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate_condition":{"shape":"box","min_coordinate":[0.3,0.3,0.3],"max_coordinate":[0.7,0.7,0.7]}}],"merge_method":"REPLACE"},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},"path":"materials_category/defective_structures/two-dimensional/island/configuration"},{"data":{"stack_components":[{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"merge_components":[{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate_condition":{"shape":"box","min_coordinate":[0,0,0],"max_coordinate":[0.7,0.7,0.7]}}],"merge_method":"REPLACE"},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z","cut_direction":[0,1,0]},"path":"materials_category/defective_structures/two-dimensional/terrace/configuration"},{"data":{"merge_components":[{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate":[0.25,0.25,0.25],"element":{"chemical_element":"B"}}],"merge_method":"REPLACE"},"path":"materials_category/defective_structures/zero-dimensional/point_defect/base_configuration"},{"data":{"merge_components":[{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate":[0.5,0.5,0.5],"element":{"chemical_element":"B"}}],"merge_method":"REPLACE"},"path":"materials_category/defective_structures/zero-dimensional/point_defect/interstitial"},{"data":{"merge_components":[{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate":[0.25,0.25,0.25],"element":{"chemical_element":"B"}}],"merge_method":"REPLACE"},"path":"materials_category/defective_structures/zero-dimensional/point_defect/substitutional"},{"data":{"merge_components":[{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},{"chemical_element":"Vac"}],"merge_method":"REPLACE"},"path":"materials_category/defective_structures/zero-dimensional/point_defect/vacancy"},{"data":{"stack_components":[{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices_2d":[1,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"p1"},"termination_bottom":{"chemical_elements":"Si","space_group_symmetry_label":"p1"},"number_of_repetitions_width":3,"number_of_repetitions_length":5},{"direction":"y","size":15,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"y"},{"direction":"x","size":20,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"x"},"path":"materials_category/pristine_structures/two-dimensional/nanoribbon"},{"data":{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices_2d":[1,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"p1"},"termination_bottom":{"chemical_elements":"Si","space_group_symmetry_label":"p1"},"number_of_repetitions_width":3,"number_of_repetitions_length":5},{"direction":"y","size":15,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"y"},"path":"materials_category/pristine_structures/two-dimensional/nanotape"},{"data":{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},"path":"materials_category/pristine_structures/two-dimensional/slab"},{"data":{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z","xy_supercell_matrix":[[2,0],[0,2]],"strain_matrix":[[1.02,0,0],[0,1.02,0],[0,0,1]]},"path":"materials_category/pristine_structures/two-dimensional/slab_strained_supercell"},{"data":{"merge_components":[{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate":[0.5,0.5,1.1],"element":{"chemical_element":"H"}},{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate":[0.3,0.7,1.1],"element":{"chemical_element":"H"}},{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate":[0.7,0.3,1.1],"element":{"chemical_element":"H"}}],"merge_method":"ADD","passivant":{"chemical_element":"H"},"bond_length":1},"path":"materials_category/processed_structures/two-dimensional/passivation/configuration"},{"data":[1,1],"path":"materials_category_components/entities/auxiliary/one-dimensional/miller_indices_2d"},{"data":[[2,0,0],[0,2,0],[0,0,2]],"path":"materials_category_components/entities/auxiliary/three-dimensional/supercell_matrix_3d"},{"data":[0,0,1],"path":"materials_category_components/entities/auxiliary/two-dimensional/miller_indices"},{"data":[[2,0],[0,2]],"path":"materials_category_components/entities/auxiliary/two-dimensional/supercell_matrix_2d"},{"data":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"path":"materials_category_components/entities/auxiliary/two-dimensional/termination"},{"data":{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate":[0.25,0.25,0.25]},"path":"materials_category_components/entities/auxiliary/zero-dimensional/crystal_site"},{"data":{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate":[0.25,0.25,0.25],"element":{"chemical_element":"B"}},"path":"materials_category_components/entities/auxiliary/zero-dimensional/point_defect_site"},{"data":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"path":"materials_category_components/entities/core/three-dimensional/crystal"},{"data":{"center_coordinate":[0.5,0.5,0.5],"shape":{"shape":"box","min_coordinate":[0,0,0],"max_coordinate":[0.5,0.5,0.5]}},"path":"materials_category_components/entities/core/three-dimensional/void"},{"data":{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}},"path":"materials_category_components/entities/core/two-dimensional/vacuum"},{"data":{"chemical_element":"Si"},"path":"materials_category_components/entities/core/zero-dimensional/atom"},{"data":{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices_2d":[1,1],"use_conventional_cell":true},"path":"materials_category_components/entities/reusable/one-dimensional/crystal_lattice_lines"},{"data":{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices_2d":[1,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"p1"},"termination_bottom":{"chemical_elements":"Si","space_group_symmetry_label":"p1"},"number_of_repetitions_width":3,"number_of_repetitions_length":5},"path":"materials_category_components/entities/reusable/one-dimensional/crystal_lattice_lines_unique_repeated"},{"data":[2,2,1],"path":"materials_category_components/entities/reusable/three-dimensional/repetitions"},{"data":{"stack_components":[{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},"path":"materials_category_components/entities/reusable/two-dimensional/slab_stack_configuration"},{"data":{"merge_components":[{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"merge_method":"ADD"},"path":"materials_category_components/operations/core/combinations/merge"},{"data":{"stack_components":[{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z","gaps":[{"id":0,"value":2.5},{"id":1,"value":3}]},"path":"materials_category_components/operations/core/combinations/stack"},{"data":{"material":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"perturbation_function":"0.1*sin(x) + 0.1*cos(y)"},"path":"materials_category_components/operations/core/modifications/perturb"},{"data":{"matrix":[[2,0,0],[0,2,0],[0,0,2]]},"path":"materials_category_components/operations/core/modifications/repeat"},{"data":{"matrix":[[1.02,0,0],[0,1.02,0],[0,0,0.98]]},"path":"materials_category_components/operations/core/modifications/strain"},{"data":{"name":"PW-NCPP (Davidson Diagonalization, Gaussian Smearing)","path":"/qm/wf/pw:/qm/wf/psp/nc?functional=pbe:/qm/wf/smearing/gaussian:/linalg/diag/davidson","units":[{"name":"Plane-wave","path":"/qm/wf/pw","categories":{"tier1":"qm","tier2":"wf","type":"pw"}},{"name":"Norm-conserving PSP","path":"/qm/wf/psp/nc?functional=pbe","categories":{"tier1":"qm","tier2":"wf","type":"psp","subtype":"nc"},"parameters":{"functional":"pbe"}},{"name":"Gaussian Smearing method","path":"/qm/wf/smearing/gaussian","categories":{"tier1":"qm","tier2":"wf","type":"smearing","subtype":"gaussian"}},{"name":"Davidson Diagonalization","path":"/linalg/diag/davidson","categories":{"tier1":"linalg","tier2":"diag","type":"davidson"}}]},"path":"method/categorized_method"},{"data":{"basisSlug":"6-311G"},"path":"method/method_parameters"},{"data":{"data":{"pseudo":[]},"subtype":"us","type":"pseudopotential"},"path":"method"},{"data":{"type":"localorbital","subtype":"pople"},"path":"methods_directory/legacy/localorbital"},{"data":{"type":"pseudopotential","subtype":"us"},"path":"methods_directory/legacy/pseudopotential"},{"data":{"data":{"dataSet":{"exabyteIds":["LCthJ6E2QabYCZqf4","LCthJ6E2QabYCZqf5","LCthJ6E2QabYCZqf6","LCthJ6E2QabYCZqf7","LCthJ6E2QabYCZqf8","LCthJ6E2QabYCZqf9","LCthJ6E2QabYCZq10","LCthJ6E2QabYCZq11"],"extra":{}},"perProperty":[{"intercept":0.363,"name":"band_gaps:direct","perFeature":[{"coefficient":0.015,"importance":0.134,"name":"atomic_radius:Ge"},{"coefficient":0.016,"importance":0.135,"name":"atomic_radius:Si"}]},{"intercept":0.364,"name":"band_gaps:indirect","perFeature":[{"coefficient":0.016,"importance":0.135,"name":"atomic_radius:Ge"},{"coefficient":0.017,"importance":0.136,"name":"atomic_radius:Si"}]}]},"precision":{"perProperty":[{"score":0.8,"trainingError":0.002}]},"subtype":"least_squares","type":"linear"},"path":"methods_directory/legacy/regression"},{"data":{"type":"unknown","subtype":"unknown"},"path":"methods_directory/legacy/unknown"},{"data":{"name":"Conjugate gradient method","path":"/opt/diff/ordern/cg","categories":{"tier1":"opt","tier2":"diff","tier3":"ordern","type":"cg"}},"path":"methods_directory/mathematical/cg"},{"data":{"data":{"dataSet":{"exabyteIds":["LCthJ6E2QabYCZqf4","LCthJ6E2QabYCZqf5","LCthJ6E2QabYCZqf6","LCthJ6E2QabYCZqf7","LCthJ6E2QabYCZqf8","LCthJ6E2QabYCZqf9","LCthJ6E2QabYCZq10","LCthJ6E2QabYCZq11"],"extra":{}},"perProperty":[{"intercept":0.363,"name":"band_gaps:direct","perFeature":[{"coefficient":0.015,"importance":0.134,"name":"atomic_radius:Ge"},{"coefficient":0.016,"importance":0.135,"name":"atomic_radius:Si"}]},{"intercept":0.364,"name":"band_gaps:indirect","perFeature":[{"coefficient":0.016,"importance":0.135,"name":"atomic_radius:Ge"},{"coefficient":0.017,"importance":0.136,"name":"atomic_radius:Si"}]}]},"precision":{"perProperty":[{"score":0.8,"trainingError":0.002}]},"categories":{"type":"linear","subtype":"least_squares"},"name":"Linear least squares regression","path":"/linear/leastsq"},"path":"methods_directory/mathematical/regression"},{"data":{"name":"cc-pVTZ basis set","path":"/qm/wf/ao/dunning?basisSlug=cc-pvtz","categories":{"tier1":"qm","tier2":"wf","type":"ao","subtype":"dunning"},"parameters":{"basisSlug":"cc-pvtz"}},"path":"methods_directory/physical/ao/dunning"},{"data":{"slug":"pseudopotential","source":{"info":{},"type":"exabyte"},"data":{"element":"Ru","hash":"3349af97451e04faae570056fb6a110b","filename":"ru_pbe_dojo-oncv_0.4.upf","path":"/export/share/pseudo/ru/gga/pbe/dojo-oncv/0.4/nc/ru_pbe_dojo-oncv_0.4.upf","valenceConfiguration":[{"orbitalName":"4S","orbitalIndex":1,"principalNumber":4,"angularMomentum":0,"occupation":2},{"orbitalName":"4P","orbitalIndex":2,"principalNumber":4,"angularMomentum":1,"occupation":6},{"orbitalName":"4D","orbitalIndex":3,"principalNumber":4,"angularMomentum":2,"occupation":7},{"orbitalName":"5S","orbitalIndex":4,"principalNumber":5,"angularMomentum":0,"occupation":1}],"apps":["espresso"],"exchangeCorrelation":{"functional":"pbe","approximation":"gga"},"name":"pseudopotential","source":"dojo-oncv","type":"nc","version":"0.4","cutoffs":{"wavefunction":[{"accuracy_level":"standard","value":42,"unit":"Ry"},{"accuracy_level":"high","value":50,"unit":"Ry"},{"accuracy_level":"low","value":38,"unit":"Ry"}]}}},"path":"methods_directory/physical/psp/file"},{"data":{"name":"PAW Pseudopotential method","path":"/qm/wf/psp/paw","slug":"pseudopotential","categories":{"tier1":"qm","tier2":"wf","type":"psp","subtype":"paw"},"data":[{"slug":"pseudopotential","source":{"info":{},"type":"exabyte"},"data":{"element":"Ru","hash":"3349af97451e04faae570056fb6a110b","filename":"ru_pbe_dojo-oncv_0.4.upf","path":"/export/share/pseudo/ru/gga/pbe/dojo-oncv/0.4/nc/ru_pbe_dojo-oncv_0.4.upf","valenceConfiguration":[{"orbitalName":"4S","orbitalIndex":1,"principalNumber":4,"angularMomentum":0,"occupation":2},{"orbitalName":"4P","orbitalIndex":2,"principalNumber":4,"angularMomentum":1,"occupation":6},{"orbitalName":"4D","orbitalIndex":3,"principalNumber":4,"angularMomentum":2,"occupation":7},{"orbitalName":"5S","orbitalIndex":4,"principalNumber":5,"angularMomentum":0,"occupation":1}],"apps":["espresso"],"exchangeCorrelation":{"functional":"pbe","approximation":"gga"},"name":"pseudopotential","source":"dojo-oncv","type":"nc","version":"0.4","cutoffs":{"wavefunction":[{"accuracy_level":"standard","value":42,"unit":"Ry"},{"accuracy_level":"high","value":50,"unit":"Ry"},{"accuracy_level":"low","value":38,"unit":"Ry"}]}}}]},"path":"methods_directory/physical/psp"},{"data":{"name":"Plane wave basis","path":"/qm/wf/pw","categories":{"tier1":"qm","tier2":"wf","type":"pw"}},"path":"methods_directory/physical/pw"},{"data":{"name":"Methfessel-Paxton smearing","path":"/qm/wf/smearing/methfessel-paxton","categories":{"tier1":"qm","tier2":"wf","type":"smearing","subtype":"methfessel-paxton"}},"path":"methods_directory/physical/smearing"},{"data":{"name":"Optimized Tetrahedron method (Kawamura)","path":"/qm/wf/tetrahedron/optimized","categories":{"tier1":"qm","tier2":"wf","type":"tetrahedron","subtype":"optimized"}},"path":"methods_directory/physical/tetrahedron"},{"data":{"name":"PZ+U (magnetism)","categories":{"tier1":{"name":"physics-based","slug":"pb"},"tier2":{"name":"quantum-mechanical","slug":"qm"},"tier3":{"name":"density functional theory","slug":"dft"},"type":{"name":"Kohn-Sham DFT","slug":"ksdft"},"subtype":{"name":"Local Density Approximation","slug":"lda"}},"parameters":{"functional":"pz","spinPolarization":"collinear","hubbardType":"U"},"method":{"name":"PW-NCPP (Davidson Diagonalization, Gaussian Smearing)","path":"/qm/wf/pw:/qm/wf/psp/nc?functional=pbe:/qm/wf/smearing/gaussian:/linalg/diag/davidson","units":[{"name":"Plane-wave","path":"/qm/wf/pw","categories":{"tier1":"qm","tier2":"wf","type":"pw"}},{"name":"Norm-conserving PSP","path":"/qm/wf/psp/nc?functional=pbe","categories":{"tier1":"qm","tier2":"wf","type":"psp","subtype":"nc"},"parameters":{"functional":"pbe"}},{"name":"Gaussian Smearing method","path":"/qm/wf/smearing/gaussian","categories":{"tier1":"qm","tier2":"wf","type":"smearing","subtype":"gaussian"}},{"name":"Davidson Diagonalization","path":"/linalg/diag/davidson","categories":{"tier1":"linalg","tier2":"diag","type":"davidson"}}]}},"path":"model/categorized_model"},{"data":{"functional":"pbe","dispersionCorrection":"dft-d3","hubbardType":"u","spinPolarization":"collinear","spinOrbitCoupling":true},"path":"model/model_parameters"},{"data":{"method":{"data":{"pseudo":[]},"subtype":"us","type":"pseudopotential"},"subtype":"gga","type":"dft","functional":"pbe"},"path":"model"},{"data":{"tier1":"pb","tier2":"qm","tier3":"abin","type":"gw","subtype":"evgw"},"path":"models_category/pb/qm/abin/gw"},{"data":{"tier1":"pb","tier2":"qm","tier3":"dft","type":"ksdft"},"path":"models_category/pb/qm/dft/ksdft"},{"data":{"tier1":"pb","tier2":"qm","tier3":"semp"},"path":"models_category/pb/qm/semp"},{"data":{"name":"PBE-D3 (SOC)","categories":{"tier1":"pb","tier2":"qm","tier3":"dft","type":"ksdft","subtype":"gga"},"parameters":{"functional":"pbe","spinOrbitCoupling":true,"dispersionCorrection":"DFT-D3"}},"path":"models_directory/gga"},{"data":{"name":"G0W0@PBE (SOC)","categories":{"tier1":"pb","tier2":"qm","tier3":"abin","type":"gw","subtype":"g0w0"},"parameters":{"functional":"pbe","require":"/pb/qm/dft/ksdft/gga","spinOrbitCoupling":true}},"path":"models_directory/gw"},{"data":{"name":"HSE06 (SOC)","categories":{"tier1":"pb","tier2":"qm","tier3":"dft","type":"ksdft","subtype":"hybrid"},"parameters":{"functional":"hse06","spinOrbitCoupling":true,"spinPolarization":"non-collinear"}},"path":"models_directory/hybrid"},{"data":{"name":"PZ+U (magnetism)","categories":{"tier1":"pb","tier2":"qm","tier3":"dft","type":"ksdft","subtype":"lda"},"parameters":{"functional":"pz","spinPolarization":"collinear","hubbardType":"U"}},"path":"models_directory/lda"},{"data":{"type":"dft","subtype":"gga","functional":"pbe","method":{"data":{"pseudo":[]},"subtype":"us","type":"pseudopotential"}},"path":"models_directory/legacy/dft"},{"data":{"type":"ml","subtype":"re","method":{"data":{"pseudo":[]},"subtype":"us","type":"pseudopotential"}},"path":"models_directory/legacy/ml"},{"data":{"type":"unknown","subtype":"unknown","method":{"data":{"pseudo":[]},"subtype":"us","type":"pseudopotential"}},"path":"models_directory/legacy/unknown"},{"data":{"name":"regression","categories":{"tier1":"st","tier2":"det","tier3":"ml","type":"re"},"parameters":{}},"path":"models_directory/re"},{"data":{"_id":"tvFyik5699io8khi8","chargeRate":{"rate":2},"createdAt":"2019-01-03T23:52:26.809Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"description":"Default project","gid":3000000,"isDefault":true,"name":"Default","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"schemaVersion":"0.2.0","slug":"exadmin-default","tags":[],"updatedAt":"2019-01-04T00:12:37.316Z"},"path":"project"},{"data":{"charge":0,"multiplicity":1},"path":"properties_directory/electronic_configuration"},{"data":{"name":"atomic_radius","value":4},"path":"properties_directory/elemental/atomic_radius"},{"data":{"name":"electronegativity","value":1.1},"path":"properties_directory/elemental/electronegativity"},{"data":{"name":"ionization_potential","value":7.7,"units":"eV"},"path":"properties_directory/elemental/ionization_potential"},{"data":{"name":"band_gaps","values":[{"kpointConduction":[0,0,0],"kpointValence":[0,0,0],"type":"direct","units":"Ry","value":0.0947},{"type":"indirect","units":"Ry","value":0}]},"path":"properties_directory/non-scalar/band_gaps"},{"data":{"name":"band_structure","spin":[0.5,0.5,0.5,0.5],"xAxis":{"label":"kpoints","units":"crystal"},"xDataArray":[[0,0,0],[0.5,0.5,0.5]],"yAxis":{"label":"energy","units":"eV"},"yDataSeries":[[12.1,12.5],[11.1,11.5],[10.1,10.5],[9.5,8.5]]},"path":"properties_directory/non-scalar/band_structure"},{"data":{"name":"charge_density_profile","xAxis":{"label":"z coordinate"},"xDataArray":[-4.89,-4.78,-4.67],"yAxis":{"label":"charge density","units":"e/A"},"yDataSeries":[[2.3697,2.1422,2.0006]]},"path":"properties_directory/non-scalar/charge_density_profile"},{"data":{"legend":[{"electronicState":"2s","element":"C","index":1,"spin":0.5},{"electronicState":"2p","element":"C","index":2,"spin":0.5}],"name":"density_of_states","xAxis":{"label":"energy","units":"eV"},"xDataArray":[[0,0,0],[0.5,0.5,0.5]],"yAxis":{"label":"density of states","units":"states/unitcell"},"yDataSeries":[[12.1,12.5],[11.1,11.5],[10.1,10.5],[9.5,8.5]]},"path":"properties_directory/non-scalar/density_of_states"},{"data":{"name":"dielectric_tensor","values":[{"part":"real","spin":0.5,"frequencies":[0,0.06012024,0.120240481,0.180360721],"components":[[0,0,0],[0.019862988,0.019862988,0.019862987],[0.039813564,0.039813565,0.039813563],[0.059940387,0.059940389,0.059940385]]},{"part":"imaginary","spin":0.5,"frequencies":[0,0.06012024,0.120240481,0.180360721],"components":[[0,0,0],[0.019862988,0.019862988,0.019862987],[0.039813564,0.039813565,0.039813563],[0.059940387,0.059940389,0.059940385]]},{"part":"real","spin":-0.5,"frequencies":[0,0.06012024,0.120240481,0.180360721],"components":[[0,0,0],[0.019862988,0.019862988,0.019862987],[0.039813564,0.039813565,0.039813563],[0.059940387,0.059940389,0.059940385]]},{"part":"imaginary","spin":-0.5,"frequencies":[0,0.06012024,0.120240481,0.180360721],"components":[[0,0,0],[0.019862988,0.019862988,0.019862987],[0.039813564,0.039813565,0.039813563],[0.059940387,0.059940389,0.059940385]]}]},"path":"properties_directory/non-scalar/dielectric_tensor"},{"data":{"name":"file_content","basename":"my_json.json","filetype":"text","objectData":{"CONTAINER":"production-20160630-cluster-001","NAME":"/cluster-001-home/jrd101/data/jrd101-default/kernel-train-Cxmkj97aXKZeaRZov/Cxmkj97aXKZeaRZov.json","PROVIDER":"aws","REGION":"us-east-1","SIZE":6582,"TIMESTAMP":"1614217411"}},"path":"properties_directory/non-scalar/file_content"},{"data":{"name":"formation_energy_contributions","values":[{"formula":"SiC","n_atoms":4,"is_elemental":false,"total_energy":-520.003969643439,"total_energy_per_atom":-130.00099241085974,"precision_value":8192,"precision_metric":"KPPRA"},{"formula":"Si","n_atoms":2,"is_elemental":true,"total_energy":-261.003969643439,"total_energy_per_atom":-130.5019848217195,"precision_value":8192,"precision_metric":"KPPRA"},{"formula":"C","n_atoms":2,"is_elemental":true,"total_energy":-321.003969643439,"total_energy_per_atom":-160.5019848217195,"precision_value":8000,"precision_metric":"KPPRA"}]},"path":"properties_directory/non-scalar/formation_energy_contributions"},{"data":{"name":"hubbard_u","units":"eV","values":[{"id":1,"atomicSpecies":"Co1","orbitalName":"3d","value":6.7553},{"id":2,"atomicSpecies":"Co2","orbitalName":"3d","value":6.7553},{"id":3,"atomicSpecies":"O","orbitalName":"3p","value":2.2438}]},"path":"properties_directory/non-scalar/hubbard_u"},{"data":{"name":"hubbard_v","units":"eV","values":[{"id":1,"atomicSpecies":"Co","id2":1,"atomicSpecies2":"Co","distance":0,"value":7.7514},{"id":1,"atomicSpecies":"Co","id2":19,"atomicSpecies2":"O","distance":3.630748,"value":0.7573}]},"path":"properties_directory/non-scalar/hubbard_v"},{"data":{"name":"hubbard_v_nn","units":"eV","values":[{"id":1,"atomicSpecies":"Co","orbitalName":"3d","id2":1,"atomicSpecies2":"Co","orbitalName2":"3d","value":7.7514},{"id":1,"atomicSpecies":"Co","orbitalName":"3d","id2":19,"atomicSpecies2":"O","orbitalName2":"2p","value":0.7573}]},"path":"properties_directory/non-scalar/hubbard_v_nn"},{"data":{"name":"phonon_dispersions","xAxis":{"label":"qpoints","units":"crystal"},"xDataArray":[[0,0,0],[0.5,0.05,0.05]],"yAxis":{"label":"frequency","units":"cm-1"},"yDataSeries":[[-0.000006,-0.000006,-0.000005,734.596987,734.618837,734.618837],[-6.859784,-6.859784,36.443014,730.782803,731.143013,731.143013]]},"path":"properties_directory/non-scalar/phonon_dispersions"},{"data":{"name":"phonon_dos","xAxis":{"label":"frequency","units":"cm-1"},"xDataArray":[[565,566,567,568,569,570,571,572,573]],"yAxis":{"label":"Phonon DOS","units":"states/cm-1"},"yDataSeries":[[0.0001433,0.00011382,0.000087721,0.00006502,0.000045713,0.000029799,0.000017279,0.0000081527,0.0000024197]]},"path":"properties_directory/non-scalar/phonon_dos"},{"data":{"name":"potential_profile","xAxis":{"label":"z coordinate"},"xDataArray":[-4.89,-4.78,-4.67],"yAxis":{"label":"energy","units":"eV"},"yDataSeries":[[-6.5847438,-7.0900648,-7.5601238],[6.4872255,8.2828137,10.1322914],[-0.0975183,1.192749,2.5721676]]},"path":"properties_directory/non-scalar/potential_profile"},{"data":{"name":"reaction_energy_profile","xAxis":{"label":"reaction coordinate"},"xDataArray":[0,0.1932731666,0.3596118308,0.4999998753,0.640387977,0.8067267116,1],"yAxis":{"label":"energy","units":"eV"},"yDataSeries":[[0,0.0336637211,0.1282952413,0.2032895454,0.1282953846,0.0336637671,-5.3e-9]]},"path":"properties_directory/non-scalar/reaction_energy_profile"},{"data":{"name":"stress_tensor","units":"kbar","value":[[3,0,0],[0,3,0],[0,0,3]]},"path":"properties_directory/non-scalar/stress_tensor"},{"data":{"PAWDoubleCounting2":{"name":"PAW_double-counting_correction_2","value":12658.30538857},"PAWDoubleCounting3":{"name":"PAW_double-counting_correction_3","value":-12074.85364512},"alphaZ":{"name":"alphaZ","value":1056.91493097},"atomicEnergy":{"name":"atomic_energy","value":15740.5725788},"eigenvalues":{"name":"eigenvalues","value":-577.80127102},"ewald":{"name":"ewald","value":128376.45871064},"exchange":{"name":"exchange","value":0},"exchangeCorrelation":{"name":"exchange_correlation","value":41.63693035},"hartree":{"name":"hartree","value":-145344.66902862},"name":"total_energy_contributions","temperatureEntropy":{"name":"temperature_entropy","value":-0.00032545},"units":"eV"},"path":"properties_directory/non-scalar/total_energy_contributions"},{"data":{"name":"vibrational_spectrum","xAxis":{"label":"wavenumber","units":"cm-1"},"xDataArray":[[1625.972,3631.832,3735.535]],"yAxis":{"label":"Absorption coefficient","units":"km/mol"},"yDataSeries":[[46.681,1.139,14.281]]},"path":"properties_directory/non-scalar/vibrational_spectrum"},{"data":{"yDataSeries":[[0,0.1,0.3,0.5,0.7,0.9,1,0.9,0.7,0.5,0.3,0.1,0]],"yAxis":{"label":"amplitude"},"xDataArray":[-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6],"xAxis":{"label":"coordinate"},"name":"wavefunction_amplitude"},"path":"properties_directory/non-scalar/wavefunction_amplitude"},{"data":{"name":"defect_formation_energy","units":"eV","value":3.5},"path":"properties_directory/scalar/defect_formation_energy"},{"data":{"name":"electron_affinity","units":"eV","value":2.5},"path":"properties_directory/scalar/electron_affinity"},{"data":{"name":"fermi_energy","units":"eV","value":-1.2},"path":"properties_directory/scalar/fermi_energy"},{"data":{"name":"formation_energy","units":"eV","value":-123.43573079},"path":"properties_directory/scalar/formation_energy"},{"data":{"name":"interfacial_energy","units":"eV/A^2","value":0.02},"path":"properties_directory/scalar/interfacial_energy"},{"data":{"name":"ionization_potential","units":"eV","value":14},"path":"properties_directory/scalar/ionization_potential"},{"data":{"name":"pressure","units":"kbar","value":-27.345},"path":"properties_directory/scalar/pressure"},{"data":{"name":"reaction_energy_barrier","units":"eV","value":-123.43573079},"path":"properties_directory/scalar/reaction_energy_barrier"},{"data":{"name":"surface_energy","units":"eV/A^2","value":0.02},"path":"properties_directory/scalar/surface_energy"},{"data":{"name":"thermal_correction_to_energy","units":"kcal/mol","value":15.033},"path":"properties_directory/scalar/thermal_correction_to_energy"},{"data":{"name":"thermal_correction_to_enthalpy","units":"kcal/mol","value":15.626},"path":"properties_directory/scalar/thermal_correction_to_enthalpy"},{"data":{"name":"total_energy","units":"eV","value":-123.43573079},"path":"properties_directory/scalar/total_energy"},{"data":{"name":"total_force","units":"eV/angstrom","value":0.000001},"path":"properties_directory/scalar/total_force"},{"data":{"name":"valence_band_offset","units":"eV","value":0.245},"path":"properties_directory/scalar/valence_band_offset"},{"data":{"name":"zero_point_energy","units":"eV","value":-123.43573079},"path":"properties_directory/scalar/zero_point_energy"},{"data":{"name":"atomic_forces","units":"eV/bohr","values":[{"id":1,"value":[-3.9e-7,-2.4e-7,0]},{"id":2,"value":[3.9e-7,2.4e-7,0]}]},"path":"properties_directory/structural/atomic_forces"},{"data":{"name":"atomic_constraints","values":[{"id":1,"value":[true,false,true]},{"id":2,"value":[false,false,true]}]},"path":"properties_directory/structural/basis/atomic_constraints_property"},{"data":{"id":1,"value":[0,0,0]},"path":"properties_directory/structural/basis/atomic_coordinate"},{"data":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"path":"properties_directory/structural/basis/atomic_coordinates"},{"data":{"id":1,"value":"Si"},"path":"properties_directory/structural/basis/atomic_element"},{"data":[{"id":0,"value":"Si"},{"id":1,"value":"Si"}],"path":"properties_directory/structural/basis/atomic_elements"},{"data":{"id":0,"value":3},"path":"properties_directory/structural/basis/atomic_label"},{"data":[{"id":0,"value":"1"},{"id":1,"value":2}],"path":"properties_directory/structural/basis/atomic_labels"},{"data":[{"atomPair":[{"id":1},{"id":2}],"bondType":"single"},{"atomPair":[{"id":3},{"id":4}],"bondType":"double"}],"path":"properties_directory/structural/basis/bonds"},{"data":{"bonds":[{"0":{"atomPair":[{"id":1},{"id":2}],"bondType":"single"},"1":{"atomPair":[{"id":3},{"id":4}],"bondType":"double"}}],"coordinates":[{"id":1,"value":[0,0,0]}],"elements":[{"id":1,"value":"Si"}],"name":"basis","units":"crystal"},"path":"properties_directory/structural/basis"},{"data":{"name":"density","units":"g/cm^3","value":2.33},"path":"properties_directory/structural/density"},{"data":{"element":"Si","name":"elemental_ratio","value":0.71},"path":"properties_directory/structural/elemental_ratio"},{"data":{"name":"inchi","value":"1S/C6H6/c1-2-4-6-5-3-1/h1-6H"},"path":"properties_directory/structural/inchi"},{"data":{"name":"inchi_key","value":"UHOVQNZJYSORNB-UHFFFAOYSA-N"},"path":"properties_directory/structural/inchi_key"},{"data":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"},"path":"properties_directory/structural/lattice/vectors"},{"data":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"path":"properties_directory/structural/lattice"},{"data":{"name":"magnetic_moments","units":"uB","values":[{"id":1,"value":[0,0,1.235]},{"id":2,"value":[0,0,-1.235]}]},"path":"properties_directory/structural/magnetic_moments"},{"data":[{"SMARTS":"[O&D1]-C(=O)[#6X3]","atoms":[{"id":1,"isConnector":false},{"id":2,"isConnector":false},{"id":3,"isConnector":false},{"id":4,"isConnector":true}],"name":"functional_group"},{"atoms":[{"id":1,"isConnector":true},{"id":2,"isConnector":false},{"id":3,"isConnector":true}],"name":"special_bond"},{"atoms":[{"id":1,"isConnector":false},{"id":2,"isConnector":false},{"id":3,"isConnector":false},{"id":4,"isConnector":false},{"id":5,"isConnector":false},{"id":6,"isConnector":true}],"isAromatic":true,"name":"ring"}],"path":"properties_directory/structural/molecular_pattern"},{"data":{"degree":10,"name":"p-norm","value":0.71},"path":"properties_directory/structural/p-norm"},{"data":{"name":"symmetry","pointGroupSymbol":"C2v","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},"path":"properties_directory/structural/symmetry"},{"data":{"name":"volume","units":"angstrom^3","value":131.1},"path":"properties_directory/structural/volume"},{"data":{"name":"convergence_electronic","data":[[-123.45678,-12.345678,-1.2345678,-0.1234567,-0.0123456,-0.0012345,-0.0001234]],"tolerance":0.001,"units":"Ry"},"path":"properties_directory/workflow/convergence/electronic"},{"data":{"name":"convergence_ionic","data":[{"electronic":{"data":[0.10303193,0.04365779,0.00051472,0.00007496,0.00000309,5.6e-7],"units":"eV"},"energy":-123.45678}],"tolerance":0.001,"units":"eV"},"path":"properties_directory/workflow/convergence/ionic"},{"data":{"data":[{"grid":{"dimensions":[1,1,1],"shifts":[0,0,0]},"value":"-123.45678"}],"property":"total_energy","tolerance":0.001,"units":"eV"},"path":"properties_directory/workflow/convergence/kpoint"},{"data":{"_id":"K3McGkqXh28HJ775m","createdAt":"2018-11-19 06:41:46.877Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"data":{"name":"pressure","units":"kbar","value":-149.03},"group":"qe:dft:gga:pbe","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"repetition":0,"schemaVersion":"0.2.0","slug":"pressure","source":{"type":"exabyte","info":{"jobId":"XnYKCmgaAAzSQH5ac","unitId":"873d0293d04af431d31f07a0-pw-scf"}},"exabyteId":["XnYKCmgaAAzSQH5ac"]},"path":"property/holder"},{"data":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","build":"GNU","version":"6.3","hasAdvancedComputeOptions":true,"isUsingMaterial":true},"path":"software/application"},{"data":{"name":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","advancedComputeOptions":true,"isDefault":true,"monitors":[{"name":"standard_output"}],"postProcessors":[],"preProcessors":[],"results":[{"name":"atomic_forces"}]},"path":"software/executable"},{"data":{"name":"pw_scf","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","input":[{"name":"in.scf","templateId":"dJ7HYz5pQ4AuN5qc9"}],"postProcessors":[],"preProcessors":[],"monitors":[],"results":[]},"path":"software/flavor"},{"data":{"name":"kpoints_grid","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","content":"K_POINTS automatic\n{{nkx}} {{nky}} {{nkz}} 0 0 0","contextProviders":[{"name":"KGridManagerMixin"}]},"path":"software/template"},{"data":{"nband":1,"npools":1,"ntg":1},"path":"software_directory/modeling/espresso/arguments"},{"data":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","version":"7.2","build":"GNU"},"path":"software_directory/modeling/espresso"},{"data":{"name":"NWChem","summary":"NWChem: a comprehensive and scalable open-source solution for large scale molecular simulations","shortName":"nwchem","version":"6.6","exec":"nwchem","build":"GNU"},"path":"software_directory/modeling/nwchem"},{"data":{"application":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","version":"7.2","build":"GNU"},"flowchartId":"modeling","head":true,"input":[{"template":{"name":"kpoints_grid","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","content":"K_POINTS automatic\n{{nkx}} {{nky}} {{nkz}} 0 0 0","contextProviders":[{"name":"KGridManagerMixin"}]},"rendered":"K_POINTS automatic\n2 2 2 0 0 0","isManuallyChanged":false}],"name":"modeling","status":"idle","type":"execution","preProcessors":[],"postProcessors":[],"monitors":[],"results":[],"context":[],"executable":{"name":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","advancedComputeOptions":true,"isDefault":true,"monitors":[{"name":"standard_output"}],"postProcessors":[],"preProcessors":[],"results":[{"name":"atomic_forces"}]},"flavor":{"name":"pw_scf","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","input":[{"name":"in.scf","templateId":"dJ7HYz5pQ4AuN5qc9"}],"postProcessors":[],"preProcessors":[],"monitors":[],"results":[]}},"path":"software_directory/modeling/unit/execution"},{"data":{"name":"vasp","shortName":"vasp","summary":"vienna ab-initio simulation package","version":"5.3.5","build":"GNU"},"path":"software_directory/modeling/vasp"},{"data":{"exec":"jupyter","flavor":"notebook","name":"jupyterLab","shortName":"jl","summary":"Jupyter Lab","version":"0.33.12","build":"GNU"},"path":"software_directory/scripting/jupyter-lab"},{"data":{"exec":"python","flavor":"python2","name":"python","shortName":"py","summary":"Python Script","version":"2.7.5","build":"GNU"},"path":"software_directory/scripting/python"},{"data":{"exec":"sh","flavor":"sh","name":"shell","shortName":"sh","summary":"Shell Script","version":"4.2.46","build":"GNU"},"path":"software_directory/scripting/shell"},{"data":{"application":{"exec":"python","flavor":"python2","name":"python","shortName":"py","summary":"Python Script","version":"2.7.5","build":"GNU"},"compute":null,"flowchartId":"scripting","head":true,"input":[{"template":{"name":"kpoints_grid","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","content":"K_POINTS automatic\n{{nkx}} {{nky}} {{nkz}} 0 0 0","contextProviders":[{"name":"KGridManagerMixin"}]},"rendered":"K_POINTS automatic\n2 2 2 0 0 0","isManuallyChanged":false}],"name":"scripting","status":"idle","type":"execution","preProcessors":[],"postProcessors":[],"monitors":[],"results":[],"executable":{"name":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","advancedComputeOptions":true,"isDefault":true,"monitors":[{"name":"standard_output"}],"postProcessors":[],"preProcessors":[],"results":[{"name":"atomic_forces"}]},"flavor":{"name":"pw_scf","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","input":[{"name":"in.scf","templateId":"dJ7HYz5pQ4AuN5qc9"}],"postProcessors":[],"preProcessors":[],"monitors":[],"results":[]},"context":[]},"path":"software_directory/scripting/unit/execution"},{"data":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Material","slug":"silicon-fcc"},"path":"system/_material"},{"data":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Job","slug":"parent-job"},"path":"system/_parent_job"},{"data":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Project","slug":"project-default"},"path":"system/_project"},{"data":{"key":"basis.coordinates.0","name":"atomsTooClose","severity":"warning","message":"Atom 0 is too close to atom X"},"path":"system/consistency_check"},{"data":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"path":"system/creator"},{"data":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Class","slug":"Slug"},"path":"system/entity_reference"},{"data":{"extension":"poscar","filename":"POSCAR.mp-546794_SiO2.poscar","text":"Si4 O8\n1.0\n5.073173 0.000000 0.000000\n0.000000 5.073173 0.000000\n0.000000 0.000000 7.359653\nSi O\n4 8\ndirect\n0.000000 0.500000 0.250000 Si\n0.500000 0.500000 0.500000 Si\n0.500000 0.000000 0.750000 Si\n0.000000 0.000000 0.000000 Si\n0.750000 0.584672 0.375000 O\n0.915328 0.250000 0.125000 O\n0.084672 0.750000 0.125000 O\n0.250000 0.415328 0.375000 O\n0.250000 0.084672 0.875000 O\n0.415328 0.750000 0.625000 O\n0.584672 0.250000 0.625000 O\n0.750000 0.915328 0.875000 O","hash":"fce4c03798763a9ed8bf64d762c7fbfd"},"path":"system/file_source"},{"data":{"type":"from-iframe-to-host","action":"set-data","payload":{"property":{"name":"material"}}},"path":"system/iframe_message"},{"data":{"header":{"entity":{"_id":"FPjAaKfuYAL7tiHbm","flowchartId":"pw_scf","name":"unit"},"timestamp":1234923492.12,"version":"0.2.0"},"payload":{"name":"total_energy","units":"eV","value":-123.43573079}},"path":"system/message"},{"data":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"path":"system/owner"},{"data":{"preProcessors":[],"postProcessors":[],"monitors":[{"name":"standard_output"}],"results":[{"name":"atomic_forces"}]},"path":"system/runtime_items"},{"data":{"_id":"LCthJ6E2QabYCZqf4","application":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","build":"GNU","version":"6.3","hasAdvancedComputeOptions":true,"isUsingMaterial":true},"model":{"method":{"data":{"pseudo":[]},"subtype":"us","type":"pseudopotential"},"subtype":"gga","type":"dft","functional":"pbe"},"name":"Band Structure","properties":["band_structure"],"units":[{"application":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","build":"GNU","version":"6.3","hasAdvancedComputeOptions":true,"isUsingMaterial":true},"compute":null,"executable":{"name":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","advancedComputeOptions":true,"isDefault":true,"monitors":[{"name":"standard_output"}],"postProcessors":[],"preProcessors":[],"results":[{"name":"atomic_forces"}]},"flavor":{"name":"pw_scf","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","input":[{"name":"in.scf","templateId":"dJ7HYz5pQ4AuN5qc9"}],"postProcessors":[],"preProcessors":[],"monitors":[],"results":[]},"flowchartId":"execution","head":true,"input":[{"template":{"name":"kpoints_grid","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","content":"K_POINTS automatic\n{{nkx}} {{nky}} {{nkz}} 0 0 0","contextProviders":[{"name":"KGridManagerMixin"}]},"rendered":"K_POINTS automatic\n2 2 2 0 0 0","isManuallyChanged":false}],"monitors":[{"name":"scf_accuracy"},{"name":"standard_output"}],"name":"execution","next":"pw-bands","postProcessors":[],"preProcessors":[],"results":[{"name":"harris_foulkes_estimate"}],"status":"idle","type":"execution","context":[]}]},"path":"workflow/subworkflow"},{"data":{"flowchartId":"assignment","head":true,"input":[{"name":"N_K_x","scope":"global"},{"name":"N_K_y","scope":"global"}],"name":"assignment","operand":"N_K_x","status":"idle","type":"assignment","value":"N_K_x+N_K_y+1","preProcessors":[],"postProcessors":[],"monitors":[],"results":[]},"path":"workflow/unit/assignment"},{"data":{"else":"sample_id_6","flowchartId":"condition","head":true,"input":[{"name":"x","scope":"global"},{"name":"total_energy","scope":"sample_id_2"}],"maxOccurrences":100,"name":"condition","statement":"abs(x-total_energy) < 1e-5","status":"idle","then":"sample_id_4","throwException":true,"type":"condition","preProcessors":[],"postProcessors":[],"monitors":[],"results":[]},"path":"workflow/unit/condition"},{"data":{"application":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","build":"GNU","version":"6.3","hasAdvancedComputeOptions":true,"isUsingMaterial":true},"compute":null,"executable":{"name":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","advancedComputeOptions":true,"isDefault":true,"monitors":[{"name":"standard_output"}],"postProcessors":[],"preProcessors":[],"results":[{"name":"atomic_forces"}]},"flavor":{"name":"pw_scf","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","input":[{"name":"in.scf","templateId":"dJ7HYz5pQ4AuN5qc9"}],"postProcessors":[],"preProcessors":[],"monitors":[],"results":[]},"flowchartId":"execution","head":true,"input":[{"template":{"name":"kpoints_grid","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","content":"K_POINTS automatic\n{{nkx}} {{nky}} {{nkz}} 0 0 0","contextProviders":[{"name":"KGridManagerMixin"}]},"rendered":"K_POINTS automatic\n2 2 2 0 0 0","isManuallyChanged":false}],"monitors":[{"name":"scf_accuracy"},{"name":"standard_output"}],"name":"execution","next":"pw-bands","postProcessors":[],"preProcessors":[],"results":[{"name":"harris_foulkes_estimate"}],"status":"idle","type":"execution","context":[]},"path":"workflow/unit/execution"},{"data":{"name":"N_K_y","scope":"global"},"path":"workflow/unit/input/_inputItemScope"},{"data":{"type":"api","endpoint":"data-frame","endpoint_options":{"data":{"features":["elemental_ratio:Si","elemental_ratio:Ge","ionization_potential:Ge","ionization_potential:Si"],"ids":["KuAsBRwofzGfHPWiT"],"targets":["band_gaps:indirect","band_gaps:direct"]},"headers":{"X-Auth-Token":"","X-User-Id":""},"method":"POST","params":{"query":{"formula":"SiGe"}}},"name":"DATA"},"path":"workflow/unit/io/api"},{"data":{"collection":"features","draft":false,"type":"db_collection"},"path":"workflow/unit/io/db_collection"},{"data":{"ids":["KuAsBRwofzGfHPWiT"],"type":"db_ids"},"path":"workflow/unit/io/db_ids"},{"data":{"basename":"index.html","overwrite":true,"objectData":{"CONTAINER":"production-20160630-cluster-001","NAME":"/cluster-001-home/jrd101/data/jrd101-default/kernel-train-Cxmkj97aXKZeaRZov/Cxmkj97aXKZeaRZov.json","PROVIDER":"aws","REGION":"us-east-1","SIZE":6582,"TIMESTAMP":"1614217411"},"filetype":"text/html","type":"object_storage"},"path":"workflow/unit/io/object_storage"},{"data":{"flowchartId":"io","head":true,"input":[{"basename":"index.html","overwrite":true,"objectData":{"CONTAINER":"production-20160630-cluster-001","NAME":"/cluster-001-home/jrd101/data/jrd101-default/kernel-train-Cxmkj97aXKZeaRZov/Cxmkj97aXKZeaRZov.json","PROVIDER":"aws","REGION":"us-east-1","SIZE":6582,"TIMESTAMP":"1614217411"},"filetype":"text/html","type":"object_storage"},{"type":"api","endpoint":"data-frame","endpoint_options":{"data":{"features":["elemental_ratio:Si","elemental_ratio:Ge","ionization_potential:Ge","ionization_potential:Si"],"ids":["KuAsBRwofzGfHPWiT"],"targets":["band_gaps:indirect","band_gaps:direct"]},"headers":{"X-Auth-Token":"","X-User-Id":""},"method":"POST","params":{"query":{"formula":"SiGe"}}},"name":"DATA"}],"name":"io","source":"api","status":"idle","subtype":"input","type":"io","preProcessors":[],"postProcessors":[],"monitors":[],"results":[]},"path":"workflow/unit/io"},{"data":{"flowchartId":"map","head":true,"input":{"target":"MAP_K_POINTS_1","values":["2 2 2 0 0 0","3 3 3 0 0 0","4 4 4 0 0 0"]},"name":"map","status":"idle","type":"map","workflowId":"zxjhEiaQvwWwvB3oM","preProcessors":[],"postProcessors":[],"monitors":[],"results":[]},"path":"workflow/unit/map"},{"data":{"flowchartId":"reduce","head":true,"input":[{"arguments":["band_gaps"],"operation":"aggregate"}],"mapFlowchartId":"1","name":"reduce","status":"idle","type":"reduce","preProcessors":[],"postProcessors":[],"monitors":[],"results":[]},"path":"workflow/unit/reduce"},{"data":{"monitors":[{"name":"standard_output"}],"postProcessors":[],"preProcessors":[],"results":[{"name":"atomic_forces"}]},"path":"workflow/unit/runtime/runtime_items"},{"data":{"_id":"FPjAaKfuYAL7tiHbm","createdAt":"2018-11-19 06:41:46.877Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"exabyteId":"qKtTzu9utCo6ac4n7","hash":"f4fd707d2e47c15f8d786cf159040954","isDefault":true,"name":"workflow","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"properties":["band_structure"],"schemaVersion":"0.2.0","slug":"workflow","subworkflows":[{"_id":"LCthJ6E2QabYCZqf4","application":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","build":"GNU","version":"6.3","hasAdvancedComputeOptions":true,"isUsingMaterial":true},"model":{"method":{"data":{"pseudo":[]},"subtype":"us","type":"pseudopotential"},"subtype":"gga","type":"dft","functional":"pbe"},"name":"Band Structure","properties":["band_structure"],"units":[{"application":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","build":"GNU","version":"6.3","hasAdvancedComputeOptions":true,"isUsingMaterial":true},"compute":null,"executable":{"name":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","advancedComputeOptions":true,"isDefault":true,"monitors":[{"name":"standard_output"}],"postProcessors":[],"preProcessors":[],"results":[{"name":"atomic_forces"}]},"flavor":{"name":"pw_scf","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","input":[{"name":"in.scf","templateId":"dJ7HYz5pQ4AuN5qc9"}],"postProcessors":[],"preProcessors":[],"monitors":[],"results":[]},"flowchartId":"execution","head":true,"input":[{"template":{"name":"kpoints_grid","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","content":"K_POINTS automatic\n{{nkx}} {{nky}} {{nkz}} 0 0 0","contextProviders":[{"name":"KGridManagerMixin"}]},"rendered":"K_POINTS automatic\n2 2 2 0 0 0","isManuallyChanged":false}],"monitors":[{"name":"scf_accuracy"},{"name":"standard_output"}],"name":"execution","next":"pw-bands","postProcessors":[],"preProcessors":[],"results":[{"name":"harris_foulkes_estimate"}],"status":"idle","type":"execution","context":[]}]}],"workflows":[],"tags":["workflow"],"units":[{"_id":"LCthJ6E2QabYCZqf4","flowchartId":"05c362dc27ff1bb98d16fd60","type":"subworkflow","name":"subworkflow unit","preProcessors":[],"postProcessors":[],"monitors":[],"results":[]}]},"path":"workflow"}]''') \ No newline at end of file +EXAMPLES = json.loads(r'''[{"data":{"builder_meta":{"emmet_version":"0.84.3rc4","pymatgen_version":"2024.11.13","run_id":"32bfb79c-5ce0-41ab-ab69-69ba9fb96205","batch_id":null,"database_version":"2025.09.25","build_date":"2024-11-21T23:02:44.639000","license":"BY-C"},"nsites":44,"elements":["Cr","O","U"],"nelements":3,"composition":{"U":4,"Cr":4,"O":36},"composition_reduced":{"U":1,"Cr":1,"O":9},"formula_pretty":"UCrO9","formula_anonymous":"ABC9","chemsys":"Cr-O-U","volume":845.85269949399,"density":3.408189243856006,"density_atomic":19.223924988499775,"symmetry":{"crystal_system":"Monoclinic","symbol":"P2_1","hall":null,"number":4,"point_group":"2","symprec":0.1,"angle_tolerance":5,"version":"2.5.0"},"material_id":"mp-1179331","deprecated":false,"deprecation_reasons":null,"last_updated":"2025-09-23T22:41:33.498000","origins":[{"name":"structure","task_id":"mp-1894950","last_updated":"2021-02-08T10:46:04.704000"},{"name":"energy","task_id":"mp-1894950","last_updated":"2025-04-07T18:46:08.486000"},{"name":"electronic_structure","task_id":"mp-1894950","last_updated":"2021-02-08T10:46:04.704000"},{"name":"magnetism","task_id":"mp-1894950","last_updated":"2021-02-08T10:46:04.704000"}],"warnings":[],"structure":{"@module":"pymatgen.core.structure","@class":"Structure","charge":0,"lattice":{"matrix":[[9.695389,0,-0.217703999999999],[0,7.301272,0],[0.229925,0,11.943821]],"pbc":[true,true,true],"a":9.697832896731981,"b":7.301272,"c":11.946033885171513,"alpha":90,"beta":90.18348688985984,"gamma":90,"volume":845.85269949399},"properties":{},"sites":[{"species":[{"element":"U","occu":1}],"abc":[0.34232,0.192423999999999,0.873390999999999],"properties":{"magmom":-0.005},"label":"U","xyz":[3.519739988155,1.404939963327992,10.357101333730988]},{"species":[{"element":"U","occu":1}],"abc":[0.65768,0.692423999999999,0.126609],"properties":{"magmom":-0.006},"label":"U","xyz":[6.405574011845001,5.055575963327993,1.369015666269]},{"species":[{"element":"U","occu":1}],"abc":[0.073174999999999,0.183513999999999,0.30478000000000005],"properties":{"magmom":0.33},"label":"U","xyz":[0.7795366315749901,1.339885629807992,3.6243072741800013]},{"species":[{"element":"U","occu":1}],"abc":[0.926825,0.683514,0.6952200000000001],"properties":{"magmom":0.331},"label":"U","xyz":[9.145777368425001,4.990521629808,8.10180972582]},{"species":[{"element":"Cr","occu":1}],"abc":[0.445121999999999,0.6890200000000001,0.856606],"properties":{"magmom":-0.008},"label":"Cr","xyz":[4.51258607700799,5.03072243344,10.134243891638]},{"species":[{"element":"Cr","occu":1}],"abc":[0.554878,0.18902000000000002,0.143394],"properties":{"magmom":-0.008},"label":"Cr","xyz":[5.412727922992,1.38008643344,1.591873108362]},{"species":[{"element":"Cr","occu":1}],"abc":[0.114634,0.701735999999999,0.414016999999999],"properties":{"magmom":-0.055},"label":"Cr","xyz":[1.206614081350999,5.123565408191993,4.919988658620988]},{"species":[{"element":"Cr","occu":1}],"abc":[0.885366,0.201736,0.585982999999999],"properties":{"magmom":-0.055},"label":"Cr","xyz":[8.718699918649001,1.472929408192,6.806128341378989]},{"species":[{"element":"O","occu":1}],"abc":[0.043522,0.893138999999999,0.354294999999999],"properties":{"magmom":0.096},"label":"O","xyz":[0.5034239979329991,6.5210507728079925,4.222161147706989]},{"species":[{"element":"O","occu":1}],"abc":[0.956477999999999,0.393138999999999,0.645705],"properties":{"magmom":0.096},"label":"O","xyz":[9.421890002066991,2.870414772807993,7.503955852293001]},{"species":[{"element":"O","occu":1}],"abc":[0.160088999999999,0.190448999999999,0.9007600000000001],"properties":{"magmom":-0.001},"label":"O","xyz":[1.75923237262099,1.390519951127992,10.723664188304001]},{"species":[{"element":"O","occu":1}],"abc":[0.839911,0.690449,0.09924000000000001],"properties":{"magmom":-0.001},"label":"O","xyz":[8.166081627379,5.041155951128,1.002452811696001]},{"species":[{"element":"O","occu":1}],"abc":[0.208083,0.203714999999999,0.411352999999999],"properties":{"magmom":0.16},"label":"O","xyz":[2.112025967812,1.4873786254799921,4.86782609838099]},{"species":[{"element":"O","occu":1}],"abc":[0.791917,0.703715,0.588646999999999],"properties":{"magmom":0.161},"label":"O","xyz":[7.813288032188,5.138014625479999,6.8582909016189895]},{"species":[{"element":"O","occu":1}],"abc":[0.051286,0.517556,0.35074299999999903],"properties":{"magmom":0.061},"label":"O","xyz":[0.577882304528999,3.778817131232,4.178046441658989]},{"species":[{"element":"O","occu":1}],"abc":[0.948714,0.017556,0.649257],"properties":{"magmom":0.061},"label":"O","xyz":[9.347431695471,0.128181131231999,7.548070558341]},{"species":[{"element":"O","occu":1}],"abc":[0.345643,0.501618,0.8809],"properties":{"magmom":0},"label":"O","xyz":[3.553684272626999,3.662449458096,10.446064055228]},{"species":[{"element":"O","occu":1}],"abc":[0.654357,0.0016179999999990002,0.11910000000000001],"properties":{"magmom":0},"label":"O","xyz":[6.371629727373,0.011813458095992001,1.280052944772]},{"species":[{"element":"O","occu":1}],"abc":[0.518803999999999,0.193216,0.827388999999999],"properties":{"magmom":0.001},"label":"O","xyz":[5.220244010580991,1.410722570752,9.769240407352989]},{"species":[{"element":"O","occu":1}],"abc":[0.481195999999999,0.693215999999999,0.172611],"properties":{"magmom":0.001},"label":"O","xyz":[4.70506998941899,5.061358570751993,1.956876592647]},{"species":[{"element":"O","occu":1}],"abc":[0.580145,0.691645,0.946761],"properties":{"magmom":0.023},"label":"O","xyz":[5.84241547433,5.04988827244,11.181644026700999]},{"species":[{"element":"O","occu":1}],"abc":[0.419855,0.191644999999999,0.053238999999999],"properties":{"magmom":0.023},"label":"O","xyz":[4.08289852567,1.399252272439992,0.544472973298988]},{"species":[{"element":"O","occu":1}],"abc":[0.349993,0.882618999999999,0.872263999999999],"properties":{"magmom":0.004},"label":"O","xyz":[3.593873582477,6.444241391367993,10.34197020467199]},{"species":[{"element":"O","occu":1}],"abc":[0.650007,0.382619,0.127736],"properties":{"magmom":0.004},"label":"O","xyz":[6.331440417523001,2.793605391367999,1.384146795328]},{"species":[{"element":"O","occu":1}],"abc":[0.501463,0.680964,0.731358],"properties":{"magmom":0.013000000000000001},"label":"O","xyz":[5.030036342257,4.971903386208,8.626038537966]},{"species":[{"element":"O","occu":1}],"abc":[0.49853699999999906,0.18096399999999901,0.268642],"properties":{"magmom":0.013000000000000001},"label":"O","xyz":[4.895277657742992,1.321267386207992,3.100078462034]},{"species":[{"element":"O","occu":1}],"abc":[0.930782999999999,0.220374,0.206034],"properties":{"magmom":0.271},"label":"O","xyz":[9.071675627036992,1.609010515728,2.258198033682001]},{"species":[{"element":"O","occu":1}],"abc":[0.069217,0.720374,0.793966],"properties":{"magmom":0.271},"label":"O","xyz":[0.853638372962999,5.259646515728,9.467918966317999]},{"species":[{"element":"O","occu":1}],"abc":[0.080918999999999,0.703684,0.554352],"properties":{"magmom":0.065},"label":"O","xyz":[0.9120005660909901,5.137788286048,6.603464669016]},{"species":[{"element":"O","occu":1}],"abc":[0.919080999999999,0.203684,0.445648],"properties":{"magmom":0.065},"label":"O","xyz":[9.01331343390899,1.487152286048,5.122652330984001]},{"species":[{"element":"O","occu":1}],"abc":[0.278294,0.7107,0.398167],"properties":{"magmom":0.053},"label":"O","xyz":[2.789717133841,5.1890140104,4.695049659131]},{"species":[{"element":"O","occu":1}],"abc":[0.721706,0.2107,0.601833],"properties":{"magmom":0.053},"label":"O","xyz":[7.135596866159,1.5383780104,7.031067340869]},{"species":[{"element":"O","occu":1}],"abc":[0.17646799999999901,0.094245,0.180848999999999],"properties":{"magmom":0.513},"label":"O","xyz":[1.75250761237699,0.688108379639999,2.121610294556988]},{"species":[{"element":"O","occu":1}],"abc":[0.823531999999999,0.594245,0.819151],"properties":{"magmom":0.514},"label":"O","xyz":[8.172806387622991,4.33874437964,9.604506705443]},{"species":[{"element":"O","occu":1}],"abc":[0.18932000000000002,0.471528,0.143677],"properties":{"magmom":0.731},"label":"O","xyz":[1.868565979705,3.442754183616,1.674836648537]},{"species":[{"element":"O","occu":1}],"abc":[0.810681,0.971528,0.856323],"properties":{"magmom":0.734},"label":"O","xyz":[8.056757715684,7.093390183615999,10.051280133759]},{"species":[{"element":"O","occu":1}],"abc":[0.315463999999999,0.206185999999999,0.656413999999999],"properties":{"magmom":0.015},"label":"O","xyz":[3.20947218444599,1.505420068591992,7.771413543237989]},{"species":[{"element":"O","occu":1}],"abc":[0.684535999999999,0.706186,0.343586],"properties":{"magmom":0.016},"label":"O","xyz":[6.715841815553991,5.156056068592,3.954703456762001]},{"species":[{"element":"O","occu":1}],"abc":[0.36181,0.047728,0.615285],"properties":{"magmom":0.013000000000000001},"label":"O","xyz":[3.649358097715,0.348475110016,7.270086419745]},{"species":[{"element":"O","occu":1}],"abc":[0.63819,0.547728,0.384715],"properties":{"magmom":0.013000000000000001},"label":"O","xyz":[6.275955902285,3.999111110016,4.456030580255001]},{"species":[{"element":"O","occu":1}],"abc":[0.129413,0.600421,0.10017000000000001],"properties":{"magmom":0.797},"label":"O","xyz":[1.277740963907,4.383837035512,1.168238821818]},{"species":[{"element":"O","occu":1}],"abc":[0.870587,0.100421,0.89983],"properties":{"magmom":0.8},"label":"O","xyz":[8.647573036093,0.733201035512,10.557878178182001]},{"species":[{"element":"O","occu":1}],"abc":[0.42195000000000005,0.053349,0.522836],"properties":{"magmom":0.001},"label":"O","xyz":[4.21118245585,0.389515559927999,6.152799393556]},{"species":[{"element":"O","occu":1}],"abc":[0.5780500000000001,0.553349,0.477164],"properties":{"magmom":0.001},"label":"O","xyz":[5.714131544150001,4.040151559928,5.573317606444]}]},"property_name":"summary","task_ids":["mp-1894950","mp-1179331"],"uncorrected_energy_per_atom":-7.058860395227273,"energy_per_atom":-7.2405876679545464,"formation_energy_per_atom":-1.288214347499999,"energy_above_hull":0.5916241527727241,"is_stable":false,"equilibrium_reaction_energy_per_atom":null,"decomposes_to":[{"material_id":"mp-773920","formula":"Cr20 O48","amount":0.309090909090909},{"material_id":"mp-375","formula":"U1 O3","amount":0.36363636363636304},{"material_id":"mp-12957","formula":"O8","amount":0.32727272727272705}],"xas":null,"grain_boundaries":null,"band_gap":0,"cbm":null,"vbm":null,"efermi":-1.79489728,"is_gap_direct":false,"is_metal":true,"es_source_calc_id":null,"bandstructure":null,"dos":null,"dos_energy_up":null,"dos_energy_down":null,"is_magnetic":true,"ordering":"FiM","total_magnetization":7.2597574,"total_magnetization_normalized_vol":0.008582767903138,"total_magnetization_normalized_formula_units":1.81493935,"num_magnetic_sites":12,"num_unique_magnetic_sites":22,"types_of_magnetic_species":["U","Cr","O"],"bulk_modulus":null,"shear_modulus":null,"universal_anisotropy":null,"homogeneous_poisson":null,"e_total":null,"e_ionic":null,"e_electronic":null,"n":null,"e_ij_max":null,"weighted_surface_energy_EV_PER_ANG2":null,"weighted_surface_energy":null,"weighted_work_function":null,"surface_anisotropy":null,"shape_factor":null,"has_reconstructed":null,"possible_species":[],"has_props":{"materials":true,"thermo":true,"xas":false,"grain_boundaries":false,"chemenv":true,"electronic_structure":true,"absorption":false,"bandstructure":false,"dos":false,"magnetism":true,"elasticity":false,"dielectric":false,"piezoelectric":false,"surface_properties":false,"oxi_states":true,"provenance":true,"charge_density":true,"eos":false,"phonon":false,"insertion_electrodes":false,"substrates":false},"theoretical":true,"database_IDs":{}},"path":"apse/db/materials_project/2025.9.25/summary"},{"data":{"energy":-0.85663276,"energy_per_atom":-0.85663276,"volume":114.05180544066401,"formation_energy_per_atom":0.038769612068965564,"nsites":1,"unit_cell_formula":{"Cs":1},"pretty_formula":"Cs","is_hubbard":false,"elements":["Cs"],"nelements":1,"e_above_hull":0.038769612068965564,"hubbards":{},"is_compatible":true,"spacegroup":{"symprec":0.1,"source":"spglib","symbol":"Im-3m","number":229,"point_group":"m-3m","crystal_system":"cubic","hall":"-I 4 2 3"},"task_ids":["mp-990461","mp-990456","mp-990457","mp-1","mp-1056804","mp-1056825","mp-1056837","mp-1056840","mp-1439955","mp-1588651","mp-1686392"],"band_gap":0,"density":1.9350390306525629,"icsd_id":null,"icsd_ids":[626969,44754,76941,626975,426937],"cif":"# generated using pymatgen\ndata_Cs\n_symmetry_space_group_name_H-M 'P 1'\n_cell_length_a 5.29144986\n_cell_length_b 5.29144986\n_cell_length_c 5.29144986\n_cell_angle_alpha 109.47122063\n_cell_angle_beta 109.47122063\n_cell_angle_gamma 109.47122063\n_symmetry_Int_Tables_number 1\n_chemical_formula_structural Cs\n_chemical_formula_sum Cs1\n_cell_volume 114.05180544\n_cell_formula_units_Z 1\nloop_\n _symmetry_equiv_pos_site_id\n _symmetry_equiv_pos_as_xyz\n 1 'x, y, z'\nloop_\n _atom_site_type_symbol\n _atom_site_label\n _atom_site_symmetry_multiplicity\n _atom_site_fract_x\n _atom_site_fract_y\n _atom_site_fract_z\n _atom_site_occupancy\n Cs Cs0 1 0.00000000 0.00000000 0.00000000 1\n","total_magnetization":0.0023078,"material_id":"mp-1","oxide_type":"None","tags":["Cesium","Cesium - LT"],"elasticity":{"G_Reuss":0,"G_VRH":0,"G_Voigt":1,"G_Voigt_Reuss_Hill":0,"K_Reuss":2,"K_VRH":2,"K_Voigt":2,"K_Voigt_Reuss_Hill":2,"elastic_anisotropy":104.62,"elastic_tensor":[[2,2,2,0,0,0],[2,2,2,0,0,0],[2,2,2,0,0,0],[0,0,0,1,0,0],[0,0,0,0,1,0],[0,0,0,0,0,1]],"homogeneous_poisson":0.38,"poisson_ratio":0.38,"universal_anisotropy":104.62,"elastic_tensor_original":[[1.73311735771011,1.7018819040120994,1.7018819040120994,0,0,0],[1.701854348631678,1.7330667734495018,1.701854348631678,0,0,0],[1.7018998983082827,1.7018998983082827,1.73308559241878,0,0,0],[-0.0000012033337295666204,-0.0000013333337724174089,-0.000005220001719148464,1.3915437882900088,0,0],[-0.000004440001462244874,-0.0000054033351128359714,-0.000002403334124841945,0,1.3915428649563715,0],[-0.0000018466672748265455,-3.9333346287108985e-7,8.63333617692249e-7,0,0,1.3915430182897548]],"compliance_tensor":[[21424.8,-10615,-10615,0,0,0],[-10615,21424.8,-10615,0,0,0],[-10615,-10615,21424.8,0,0,0],[0,0,0,718.6,0,0],[0,0,0,0,718.6,0],[0,0,0,0,0,718.6]],"warnings":["c11 and c12 are within 5% or c12 is greater than c11","c11 and c13 are within 5% or c13 is greater than c11","c11 and c23 are within 5% or c23 is greater than c11","One or more K, G below 2 GPa"],"nsites":1},"piezo":null,"diel":null,"deprecated":false,"full_formula":"Cs1"},"path":"apse/db/materials_project/legacy/material"},{"data":{"phi":{"nelect":48,"phi":4.73414095269429,"scf_vbm":-1.6519,"scf_cbm":-1.6472,"Ef":-1.97822464,"scf_gap":0,"avg_max":2.7559163126942896,"scf_dir":false},"atoms":{"lattice_mat":[[3.353617811446221,0,0],[0,6.273423021773385,0],[0,0,33.313518]],"coords":[[0,0.6004615456553349,0.2002745956304112],[0.5,0.9651745521229684,0.205389889617873],[0,0.8600702878546368,0.2642586539633663],[0.5,0.3508476059345406,0.2471701152668883],[0.5,0.7055702442093444,0.1414059027438078],[0,0.2147957642231673,0.1584938427776558]],"elements":["Mo","Mo","Te","Te","Te","Te"],"abc":[3.35362,6.27342,33.31352],"angles":[90,90,90],"cartesian":false,"props":["","","","","",""]},"jid":"JVASP-677"},"path":"apse/db/nist_jarvis/2024.3.13/db_entry"},{"data":{"CONTROL":{"calculation":"scf","title":"","verbosity":"low","restart_mode":"from_scratch","wf_collect":true,"tstress":true,"tprnfor":true,"outdir":"{{ JOB_WORK_DIR }}/outdir","wfcdir":"{{ JOB_WORK_DIR }}/outdir","prefix":"__prefix__","pseudo_dir":"{{ JOB_WORK_DIR }}/pseudo"},"SYSTEM":{"ibrav":0,"nat":2,"ntyp":2,"ecutwfc":40,"ecutrho":200,"occupations":"smearing","degauss":0.005,"starting_magnetization":[0.01,0.02],"Hubbard_occ":[[1,1,0],[1,2,0.02]]},"ELECTRONS":{"diagonalization":"david","diago_david_ndim":4,"diago_full_acc":true,"mixing_beta":0.3,"startingwfc":"atomic+random"},"IONS":null,"CELL":null,"ATOMIC_SPECIES":{"values":[{"X":"Cs","Mass_X":132.90543,"PseudoPot_X":"Cs.upf"},{"X":"Cl","Mass_X":35.4527,"PseudoPot_X":"Cl.upf"}]},"CELL_PARAMETERS":{"card_option":"angstrom","values":{"v1":[4.324582724,0,2.496799],"v2":[1.441527575,4.077255694,2.496799],"v3":[0,0,4.993598]}},"K_POINTS":{"card_option":"automatic","values":{"nk1":2,"nk2":2,"nk3":2,"sk1":0,"sk2":0,"sk3":0}}},"path":"apse/file/applications/espresso/7.2/pw.x"},{"data":{"min_vacuum_size":0,"in_unit_planes":true,"reorient_lattice":true,"symmetrize":false},"path":"apse/materials/builders/slab/pymatgen/parameters"},{"data":{"xDataArray":[0,1,2],"yDataSeries":[[0,0.5,1],[0,2.5,5]]},"path":"core/abstract/2d_data"},{"data":{"xAxis":{"label":"kpoint index"},"xDataArray":[0,1,2],"yAxis":{"label":"eigenvalues","units":"eV"},"yDataSeries":[[0,0.5,1],[0,2.5,5]]},"path":"core/abstract/2d_plot"},{"data":{"dimensions":[2,2,2],"shifts":[0,0,0]},"path":"core/abstract/3d_grid"},{"data":[0,5.5,0],"path":"core/abstract/coordinate_3d"},{"data":[[1,0,0],[0,1,0],[0,0,1]],"path":"core/abstract/matrix_3x3"},{"data":[1,0],"path":"core/abstract/vector_2d"},{"data":[1,0,0],"path":"core/abstract/vector_3d"},{"data":[true,false,false],"path":"core/abstract/vector_boolean_3d"},{"data":[[0,0.5,1],[0,2.5,5]],"path":"core/primitive/1d_data_series"},{"data":[true,false,false],"path":"core/primitive/array_of_3_booleans"},{"data":[1,0,0],"path":"core/primitive/array_of_3_numbers"},{"data":[{"id":1},{"id":2}],"path":"core/primitive/array_of_ids"},{"data":{"label":"energy","units":"eV"},"path":"core/primitive/axis"},{"data":{"value":0.1},"path":"core/primitive/scalar"},{"data":{"value":"example string"},"path":"core/primitive/string"},{"data":{"name":"pressure","scalar":[{"value":"1.2"},{"value":"3.3"}],"units":"kbar"},"path":"core/reference/experiment/condition"},{"data":{"latitude":24.3423424,"longitude":43.234232},"path":"core/reference/experiment/location"},{"data":{"authors":[{"affiliation":"Exabyte Inc.","first":"John","last":"Doe"}],"conditions":[{"name":"pressure","scalar":[{"value":"1.2"},{"value":"3.3"}],"units":"kbar"}],"method":"DFT","references":[{"authors":[{"affiliation":"Exabyte Inc.","first":"John","last":"Doe"}],"doi":"10.1000/xyz123"}],"timestamp":141182979832,"title":"Experiment 1"},"path":"core/reference/experiment"},{"data":{"measurementId":"mSrUn20260901ALSc1","sampleId":"aScN01448r0c00Xy1","unitId":"7c1e2f0a9b3d4e5f6a7b8c9d-build-loop"},"path":"core/reference/external"},{"data":{"affiliation":"Exabyte Inc.","first":"John","last":"Doe"},"path":"core/reference/literature/name"},{"data":{"end":"2","start":"1"},"path":"core/reference/literature/pages"},{"data":{"authors":[{"affiliation":"Exabyte Inc.","first":"John","last":"Doe"}],"doi":"10.1000/xyz123"},"path":"core/reference/literature"},{"data":{"_id":"nDAavgjrT5ezwFgod","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"title":"My Calculation"},"path":"core/reference/modeling/exabyte"},{"data":{"_id":"nDAavgjrT5ezwFgod","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"title":"My Calculation"},"path":"core/reference/modeling"},{"data":{"_id":"nDAavgjrT5ezwFgod","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"title":"My Calculation"},"path":"core/reference"},{"data":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"path":"core/reusable/atomic_vectors"},{"data":{"kpointConduction":[0,0,0],"kpointValence":[0,0,0],"name":"band_gap","type":"direct","units":"Ry","value":0.0947},"path":"core/reusable/band_gap"},{"data":{"shape":"box","min_coordinate":[0,0,0],"max_coordinate":[0.5,0.5,0.5]},"path":"core/reusable/coordinate_conditions/box"},{"data":{"shape":"cylinder","radius":0.25,"min_z":0,"max_z":1},"path":"core/reusable/coordinate_conditions/cylinder"},{"data":{"shape":"plane","plane_normal":[0,0,1],"plane_point_coordinate":[0,0,0.5]},"path":"core/reusable/coordinate_conditions/plane"},{"data":{"shape":"sphere","radius":0.25},"path":"core/reusable/coordinate_conditions/sphere"},{"data":{"shape":"triangular_prism","position_on_surface_1":[0.25,0.25],"position_on_surface_2":[0.75,0.25],"position_on_surface_3":[0.5,0.75],"min_z":0,"max_z":1},"path":"core/reusable/coordinate_conditions/triangular_prism"},{"data":{"name":"zero_point_energy","units":"eV","value":-0.0634},"path":"core/reusable/energy"},{"data":{"pathname":"/path/to/file/","basename":"some_file.png","filetype":"image"},"path":"core/reusable/file_metadata"},{"data":{"formula":"SiC","n_atoms":4,"is_elemental":false,"total_energy":-520.004,"total_energy_per_atom":-130.001,"precision_value":8192,"precision_metric":"KPPRA"},"path":"core/reusable/formation_energy_contribution"},{"data":{"CONTAINER":"production-20160630-cluster-001","NAME":"/cluster-001-home/jrd101/data/jrd101-default/kernel-train-Cxmkj97aXKZeaRZov/Cxmkj97aXKZeaRZov.json","PROVIDER":"aws","REGION":"us-east-1","SIZE":6582,"TIMESTAMP":"1614217411"},"path":"core/reusable/object_storage_container_data"},{"data":{"properties":[{"name":"atomic_radius","value":4},{"name":"electronegativity","value":1.1},{"name":"ionization_potential","value":7.7,"units":"eV"}],"symbol":"Si"},"path":"element"},{"data":{"arguments":{"nband":1,"npools":1,"ntg":1},"cluster":{"fqdn":"master-1-staging.exabyte.io","jid":"1234.master-1-staging.exabyte.io"},"email":"demo@exabyte.io","errors":[{"domain":"rupy","message":"File Not Found: /home/demo/data/project1/job-123/job-config.json","reason":"FileNotFound"}],"excludeFilesPattern":"^.*.txt$","maxCPU":36,"nodes":1,"notify":"abe","ppn":1,"queue":"OF","timeLimit":"00:05:00"},"path":"job/compute"},{"data":{"_id":"FPjAaKfuYAL7tiHbm","_material":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Material","slug":"silicon-fcc"},"_project":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Project","slug":"project-default"},"compute":{"arguments":{"nband":1,"npools":1,"ntg":1},"cluster":{"fqdn":"master-1-staging.exabyte.io","jid":"1234.master-1-staging.exabyte.io"},"email":"demo@exabyte.io","errors":[{"domain":"rupy","message":"File Not Found: /home/demo/data/project1/job-123/job-config.json","reason":"FileNotFound"}],"excludeFilesPattern":"^.*.txt$","maxCPU":36,"nodes":1,"notify":"abe","ppn":1,"queue":"OF","timeLimit":"00:05:00"},"createdAt":"2018-11-19 06:41:46.877Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"name":"job","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"schemaVersion":"0.2.0","slug":"job","status":"pre-submission","workflow":{"_id":"FPjAaKfuYAL7tiHbm","createdAt":"2018-11-19 06:41:46.877Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"exabyteId":"qKtTzu9utCo6ac4n7","hash":"f4fd707d2e47c15f8d786cf159040954","isDefault":true,"name":"workflow","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"properties":["band_structure"],"schemaVersion":"0.2.0","slug":"workflow","subworkflows":[{"_id":"LCthJ6E2QabYCZqf4","application":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","build":"GNU","version":"6.3","hasAdvancedComputeOptions":true,"isUsingMaterial":true},"model":{"method":{"data":{"pseudo":[]},"subtype":"us","type":"pseudopotential"},"subtype":"gga","type":"dft","functional":"pbe"},"name":"Band Structure","properties":["band_structure"],"units":[{"application":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","build":"GNU","version":"6.3","hasAdvancedComputeOptions":true,"isUsingMaterial":true},"compute":null,"executable":{"name":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","advancedComputeOptions":true,"isDefault":true,"monitors":[{"name":"standard_output"}],"postProcessors":[],"preProcessors":[],"results":[{"name":"atomic_forces"}]},"flavor":{"name":"pw_scf","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","input":[{"name":"in.scf","templateId":"dJ7HYz5pQ4AuN5qc9"}],"postProcessors":[],"preProcessors":[],"monitors":[],"results":[]},"flowchartId":"execution","head":true,"input":[{"template":{"name":"kpoints_grid","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","content":"K_POINTS automatic\n{{nkx}} {{nky}} {{nkz}} 0 0 0","contextProviders":[{"name":"KGridManagerMixin"}]},"rendered":"K_POINTS automatic\n2 2 2 0 0 0","isManuallyChanged":false}],"monitors":[{"name":"scf_accuracy"},{"name":"standard_output"}],"name":"execution","next":"pw-bands","postProcessors":[],"preProcessors":[],"results":[{"name":"harris_foulkes_estimate"}],"status":"idle","type":"execution","context":[]}]}],"workflows":[],"tags":["workflow"],"units":[{"_id":"LCthJ6E2QabYCZqf4","flowchartId":"05c362dc27ff1bb98d16fd60","type":"subworkflow","name":"subworkflow unit","preProcessors":[],"postProcessors":[],"monitors":[],"results":[]}]}},"path":"job"},{"data":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"path":"material"},{"data":{"stack_components":[{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"direction":"z","size":20,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},"path":"materials_category/compound_pristine_structures/two-dimensional/interface/configuration"},{"data":{"stack_components":[{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"}],"direction":"x","actual_angle":45,"xy_shift":[0,0]},"path":"materials_category/defective_structures/one-dimensional/grain_boundary_linear/configuration"},{"data":{"stack_components":[{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate":[0.5,0.5,1.1],"element":{"chemical_element":"B"}},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},"path":"materials_category/defective_structures/two-dimensional/adatom/configuration"},{"data":{"stack_components":[{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"direction":"z","size":20,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},"path":"materials_category/defective_structures/two-dimensional/grain_boundary_planar/configuration"},{"data":{"stack_components":[{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"merge_components":[{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate_condition":{"shape":"box","min_coordinate":[0.3,0.3,0.3],"max_coordinate":[0.7,0.7,0.7]}}],"merge_method":"REPLACE"},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},"path":"materials_category/defective_structures/two-dimensional/island/configuration"},{"data":{"stack_components":[{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"merge_components":[{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate_condition":{"shape":"box","min_coordinate":[0,0,0],"max_coordinate":[0.7,0.7,0.7]}}],"merge_method":"REPLACE"},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z","cut_direction":[0,1,0]},"path":"materials_category/defective_structures/two-dimensional/terrace/configuration"},{"data":{"merge_components":[{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate":[0.25,0.25,0.25],"element":{"chemical_element":"B"}}],"merge_method":"REPLACE"},"path":"materials_category/defective_structures/zero-dimensional/point_defect/base_configuration"},{"data":{"merge_components":[{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate":[0.5,0.5,0.5],"element":{"chemical_element":"B"}}],"merge_method":"REPLACE"},"path":"materials_category/defective_structures/zero-dimensional/point_defect/interstitial"},{"data":{"merge_components":[{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate":[0.25,0.25,0.25],"element":{"chemical_element":"B"}}],"merge_method":"REPLACE"},"path":"materials_category/defective_structures/zero-dimensional/point_defect/substitutional"},{"data":{"merge_components":[{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},{"chemical_element":"Vac"}],"merge_method":"REPLACE"},"path":"materials_category/defective_structures/zero-dimensional/point_defect/vacancy"},{"data":{"stack_components":[{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices_2d":[1,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"p1"},"termination_bottom":{"chemical_elements":"Si","space_group_symmetry_label":"p1"},"number_of_repetitions_width":3,"number_of_repetitions_length":5},{"direction":"y","size":15,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"y"},{"direction":"x","size":20,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"x"},"path":"materials_category/pristine_structures/two-dimensional/nanoribbon"},{"data":{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices_2d":[1,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"p1"},"termination_bottom":{"chemical_elements":"Si","space_group_symmetry_label":"p1"},"number_of_repetitions_width":3,"number_of_repetitions_length":5},{"direction":"y","size":15,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"y"},"path":"materials_category/pristine_structures/two-dimensional/nanotape"},{"data":{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},"path":"materials_category/pristine_structures/two-dimensional/slab"},{"data":{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z","xy_supercell_matrix":[[2,0],[0,2]],"strain_matrix":[[1.02,0,0],[0,1.02,0],[0,0,1]]},"path":"materials_category/pristine_structures/two-dimensional/slab_strained_supercell"},{"data":{"merge_components":[{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate":[0.5,0.5,1.1],"element":{"chemical_element":"H"}},{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate":[0.3,0.7,1.1],"element":{"chemical_element":"H"}},{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate":[0.7,0.3,1.1],"element":{"chemical_element":"H"}}],"merge_method":"ADD","passivant":{"chemical_element":"H"},"bond_length":1},"path":"materials_category/processed_structures/two-dimensional/passivation/configuration"},{"data":[1,1],"path":"materials_category_components/entities/auxiliary/one-dimensional/miller_indices_2d"},{"data":[[2,0,0],[0,2,0],[0,0,2]],"path":"materials_category_components/entities/auxiliary/three-dimensional/supercell_matrix_3d"},{"data":[0,0,1],"path":"materials_category_components/entities/auxiliary/two-dimensional/miller_indices"},{"data":[[2,0],[0,2]],"path":"materials_category_components/entities/auxiliary/two-dimensional/supercell_matrix_2d"},{"data":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"path":"materials_category_components/entities/auxiliary/two-dimensional/termination"},{"data":{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate":[0.25,0.25,0.25]},"path":"materials_category_components/entities/auxiliary/zero-dimensional/crystal_site"},{"data":{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"coordinate":[0.25,0.25,0.25],"element":{"chemical_element":"B"}},"path":"materials_category_components/entities/auxiliary/zero-dimensional/point_defect_site"},{"data":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"path":"materials_category_components/entities/core/three-dimensional/crystal"},{"data":{"center_coordinate":[0.5,0.5,0.5],"shape":{"shape":"box","min_coordinate":[0,0,0],"max_coordinate":[0.5,0.5,0.5]}},"path":"materials_category_components/entities/core/three-dimensional/void"},{"data":{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}},"path":"materials_category_components/entities/core/two-dimensional/vacuum"},{"data":{"chemical_element":"Si"},"path":"materials_category_components/entities/core/zero-dimensional/atom"},{"data":{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices_2d":[1,1],"use_conventional_cell":true},"path":"materials_category_components/entities/reusable/one-dimensional/crystal_lattice_lines"},{"data":{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices_2d":[1,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"p1"},"termination_bottom":{"chemical_elements":"Si","space_group_symmetry_label":"p1"},"number_of_repetitions_width":3,"number_of_repetitions_length":5},"path":"materials_category_components/entities/reusable/one-dimensional/crystal_lattice_lines_unique_repeated"},{"data":[2,2,1],"path":"materials_category_components/entities/reusable/three-dimensional/repetitions"},{"data":{"stack_components":[{"stack_components":[{"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"miller_indices":[0,0,1],"use_conventional_cell":true,"termination_top":{"chemical_elements":"Si","space_group_symmetry_label":"P4/mmm_2"},"number_of_repetitions":5},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z"},"path":"materials_category_components/entities/reusable/two-dimensional/slab_stack_configuration"},{"data":{"merge_components":[{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"merge_method":"ADD"},"path":"materials_category_components/operations/core/combinations/merge"},{"data":{"stack_components":[{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},{"direction":"z","size":10,"crystal":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}}}],"direction":"z","gaps":[{"id":0,"value":2.5},{"id":1,"value":3}]},"path":"materials_category_components/operations/core/combinations/stack"},{"data":{"material":{"_id":"LCthJ6E2QabYCZqf3","basis":{"coordinates":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"elements":[{"id":1,"value":"Si"},{"id":2,"value":"Si"}],"name":"basis","units":"crystal"},"createdAt":"2016-04-03T05:25:37.430Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"derivedProperties":[{"name":"volume","units":"angstrom^3","value":131.1},{"name":"density","units":"g/cm^3","value":2.33},{"name":"symmetry","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},{"degree":10,"name":"p-norm","value":0.71},{"element":"Si","name":"elemental_ratio","value":0.71},{"name":"inchi","value":""},{"name":"inchi_key","value":""}],"exabyteId":"RKiswuxHKkF3uvLyA","formula":"Si","hash":"4ac3fa057e3530628eb1295c77110eaa","isDefault":false,"isNonPeriodic":false,"lattice":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"name":"Silicon FCC","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"scaledHash":"5bd4eb168e3530628eb1295d88221cbb","schemaVersion":"0.2.0","slug":"silicon-fcc","unitCellFormula":"Si2","updatedAt":"2016-04-04T17:58:42.867Z","metadata":{"boundaryConditions":{"type":"pbc","offset":0}}},"perturbation_function":"0.1*sin(x) + 0.1*cos(y)"},"path":"materials_category_components/operations/core/modifications/perturb"},{"data":{"matrix":[[2,0,0],[0,2,0],[0,0,2]]},"path":"materials_category_components/operations/core/modifications/repeat"},{"data":{"matrix":[[1.02,0,0],[0,1.02,0],[0,0,0.98]]},"path":"materials_category_components/operations/core/modifications/strain"},{"data":{"name":"utk-asylum-cypher-1","description":{"vendor":"Asylum Research","model":"Cypher","software":"afm-lib"},"session":{"name":"20260901_171601_alscn_01448","started":"2026-09-01T17:16:02Z","directory":"C:\\Users\\Asylum User\\Documents\\Asylum Research Data\\260831"},"settings":{"drive_amplitude_v":1,"bias_points":64,"loops_per_site":8},"registration":{"frame":"asylum-spm stage","units":"m","anchor":"100 um below the left bottom electrode","r0c00_stage_m":[0.021064,0.020812999]}},"path":"measurement/instrument"},{"data":{"isEntitySet":true,"entitySetType":"ordered","entityCls":"Measurement","_sampleSet":{"_id":"sSetPDACCOM501448","cls":"Sample","slug":"pdac-com5-01448"}},"path":"measurement/set"},{"data":{"_id":"mSrUn20260901ALSc1","_sample":{"_id":"aScN01448r0c00Xy1","cls":"Sample","slug":"pdac-com5-01448-r0c00"},"instrument":{"name":"utk-asylum-cypher-1","description":{"vendor":"Asylum Research","model":"Cypher","software":"afm-lib"},"session":{"name":"20260901_171601_alscn_01448","started":"2026-09-01T17:16:02Z","directory":"C:\\Users\\Asylum User\\Documents\\Asylum Research Data\\260831"},"settings":{"drive_amplitude_v":1,"bias_points":64,"loops_per_site":8},"registration":{"frame":"asylum-spm stage","units":"m","anchor":"100 um below the left bottom electrode","r0c00_stage_m":[0.021064,0.020812999]}},"metadata":{"run_dir":"C:\\Users\\Asylum User\\Documents\\GitHub\\AFM_Combinatorial_Libraries\\runs\\20260901_171601_alscn_01448","recordsCount":8},"name":"20260901_171601_alscn_01448","schemaVersion":"0.2.0","slug":"20260901-171601-alscn-01448","status":"finished","workflow":{"_id":"FPjAaKfuYAL7tiHbm","createdAt":"2018-11-19 06:41:46.877Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"exabyteId":"qKtTzu9utCo6ac4n7","hash":"f4fd707d2e47c15f8d786cf159040954","isDefault":true,"name":"workflow","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"properties":["band_structure"],"schemaVersion":"0.2.0","slug":"workflow","subworkflows":[{"_id":"LCthJ6E2QabYCZqf4","application":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","build":"GNU","version":"6.3","hasAdvancedComputeOptions":true,"isUsingMaterial":true},"model":{"method":{"data":{"pseudo":[]},"subtype":"us","type":"pseudopotential"},"subtype":"gga","type":"dft","functional":"pbe"},"name":"Band Structure","properties":["band_structure"],"units":[{"application":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","build":"GNU","version":"6.3","hasAdvancedComputeOptions":true,"isUsingMaterial":true},"compute":null,"executable":{"name":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","advancedComputeOptions":true,"isDefault":true,"monitors":[{"name":"standard_output"}],"postProcessors":[],"preProcessors":[],"results":[{"name":"atomic_forces"}]},"flavor":{"name":"pw_scf","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","input":[{"name":"in.scf","templateId":"dJ7HYz5pQ4AuN5qc9"}],"postProcessors":[],"preProcessors":[],"monitors":[],"results":[]},"flowchartId":"execution","head":true,"input":[{"template":{"name":"kpoints_grid","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","content":"K_POINTS automatic\n{{nkx}} {{nky}} {{nkz}} 0 0 0","contextProviders":[{"name":"KGridManagerMixin"}]},"rendered":"K_POINTS automatic\n2 2 2 0 0 0","isManuallyChanged":false}],"monitors":[{"name":"scf_accuracy"},{"name":"standard_output"}],"name":"execution","next":"pw-bands","postProcessors":[],"preProcessors":[],"results":[{"name":"harris_foulkes_estimate"}],"status":"idle","type":"execution","context":[]}]}],"workflows":[],"tags":["workflow"],"units":[{"_id":"LCthJ6E2QabYCZqf4","flowchartId":"05c362dc27ff1bb98d16fd60","type":"subworkflow","name":"subworkflow unit","preProcessors":[],"postProcessors":[],"monitors":[],"results":[]}]}},"path":"measurement"},{"data":{"name":"PW-NCPP (Davidson Diagonalization, Gaussian Smearing)","path":"/qm/wf/pw:/qm/wf/psp/nc?functional=pbe:/qm/wf/smearing/gaussian:/linalg/diag/davidson","units":[{"name":"Plane-wave","path":"/qm/wf/pw","categories":{"tier1":"qm","tier2":"wf","type":"pw"}},{"name":"Norm-conserving PSP","path":"/qm/wf/psp/nc?functional=pbe","categories":{"tier1":"qm","tier2":"wf","type":"psp","subtype":"nc"},"parameters":{"functional":"pbe"}},{"name":"Gaussian Smearing method","path":"/qm/wf/smearing/gaussian","categories":{"tier1":"qm","tier2":"wf","type":"smearing","subtype":"gaussian"}},{"name":"Davidson Diagonalization","path":"/linalg/diag/davidson","categories":{"tier1":"linalg","tier2":"diag","type":"davidson"}}]},"path":"method/categorized_method"},{"data":{"basisSlug":"6-311G"},"path":"method/method_parameters"},{"data":{"data":{"pseudo":[]},"subtype":"us","type":"pseudopotential"},"path":"method"},{"data":{"type":"localorbital","subtype":"pople"},"path":"methods_directory/legacy/localorbital"},{"data":{"type":"pseudopotential","subtype":"us"},"path":"methods_directory/legacy/pseudopotential"},{"data":{"data":{"dataSet":{"exabyteIds":["LCthJ6E2QabYCZqf4","LCthJ6E2QabYCZqf5","LCthJ6E2QabYCZqf6","LCthJ6E2QabYCZqf7","LCthJ6E2QabYCZqf8","LCthJ6E2QabYCZqf9","LCthJ6E2QabYCZq10","LCthJ6E2QabYCZq11"],"extra":{}},"perProperty":[{"intercept":0.363,"name":"band_gaps:direct","perFeature":[{"coefficient":0.015,"importance":0.134,"name":"atomic_radius:Ge"},{"coefficient":0.016,"importance":0.135,"name":"atomic_radius:Si"}]},{"intercept":0.364,"name":"band_gaps:indirect","perFeature":[{"coefficient":0.016,"importance":0.135,"name":"atomic_radius:Ge"},{"coefficient":0.017,"importance":0.136,"name":"atomic_radius:Si"}]}]},"precision":{"perProperty":[{"score":0.8,"trainingError":0.002}]},"subtype":"least_squares","type":"linear"},"path":"methods_directory/legacy/regression"},{"data":{"type":"unknown","subtype":"unknown"},"path":"methods_directory/legacy/unknown"},{"data":{"name":"Conjugate gradient method","path":"/opt/diff/ordern/cg","categories":{"tier1":"opt","tier2":"diff","tier3":"ordern","type":"cg"}},"path":"methods_directory/mathematical/cg"},{"data":{"data":{"dataSet":{"exabyteIds":["LCthJ6E2QabYCZqf4","LCthJ6E2QabYCZqf5","LCthJ6E2QabYCZqf6","LCthJ6E2QabYCZqf7","LCthJ6E2QabYCZqf8","LCthJ6E2QabYCZqf9","LCthJ6E2QabYCZq10","LCthJ6E2QabYCZq11"],"extra":{}},"perProperty":[{"intercept":0.363,"name":"band_gaps:direct","perFeature":[{"coefficient":0.015,"importance":0.134,"name":"atomic_radius:Ge"},{"coefficient":0.016,"importance":0.135,"name":"atomic_radius:Si"}]},{"intercept":0.364,"name":"band_gaps:indirect","perFeature":[{"coefficient":0.016,"importance":0.135,"name":"atomic_radius:Ge"},{"coefficient":0.017,"importance":0.136,"name":"atomic_radius:Si"}]}]},"precision":{"perProperty":[{"score":0.8,"trainingError":0.002}]},"categories":{"type":"linear","subtype":"least_squares"},"name":"Linear least squares regression","path":"/linear/leastsq"},"path":"methods_directory/mathematical/regression"},{"data":{"name":"cc-pVTZ basis set","path":"/qm/wf/ao/dunning?basisSlug=cc-pvtz","categories":{"tier1":"qm","tier2":"wf","type":"ao","subtype":"dunning"},"parameters":{"basisSlug":"cc-pvtz"}},"path":"methods_directory/physical/ao/dunning"},{"data":{"slug":"pseudopotential","source":{"info":{},"type":"exabyte"},"data":{"element":"Ru","hash":"3349af97451e04faae570056fb6a110b","filename":"ru_pbe_dojo-oncv_0.4.upf","path":"/export/share/pseudo/ru/gga/pbe/dojo-oncv/0.4/nc/ru_pbe_dojo-oncv_0.4.upf","valenceConfiguration":[{"orbitalName":"4S","orbitalIndex":1,"principalNumber":4,"angularMomentum":0,"occupation":2},{"orbitalName":"4P","orbitalIndex":2,"principalNumber":4,"angularMomentum":1,"occupation":6},{"orbitalName":"4D","orbitalIndex":3,"principalNumber":4,"angularMomentum":2,"occupation":7},{"orbitalName":"5S","orbitalIndex":4,"principalNumber":5,"angularMomentum":0,"occupation":1}],"apps":["espresso"],"exchangeCorrelation":{"functional":"pbe","approximation":"gga"},"name":"pseudopotential","source":"dojo-oncv","type":"nc","version":"0.4","cutoffs":{"wavefunction":[{"accuracy_level":"standard","value":42,"unit":"Ry"},{"accuracy_level":"high","value":50,"unit":"Ry"},{"accuracy_level":"low","value":38,"unit":"Ry"}]}}},"path":"methods_directory/physical/psp/file"},{"data":{"name":"PAW Pseudopotential method","path":"/qm/wf/psp/paw","slug":"pseudopotential","categories":{"tier1":"qm","tier2":"wf","type":"psp","subtype":"paw"},"data":[{"slug":"pseudopotential","source":{"info":{},"type":"exabyte"},"data":{"element":"Ru","hash":"3349af97451e04faae570056fb6a110b","filename":"ru_pbe_dojo-oncv_0.4.upf","path":"/export/share/pseudo/ru/gga/pbe/dojo-oncv/0.4/nc/ru_pbe_dojo-oncv_0.4.upf","valenceConfiguration":[{"orbitalName":"4S","orbitalIndex":1,"principalNumber":4,"angularMomentum":0,"occupation":2},{"orbitalName":"4P","orbitalIndex":2,"principalNumber":4,"angularMomentum":1,"occupation":6},{"orbitalName":"4D","orbitalIndex":3,"principalNumber":4,"angularMomentum":2,"occupation":7},{"orbitalName":"5S","orbitalIndex":4,"principalNumber":5,"angularMomentum":0,"occupation":1}],"apps":["espresso"],"exchangeCorrelation":{"functional":"pbe","approximation":"gga"},"name":"pseudopotential","source":"dojo-oncv","type":"nc","version":"0.4","cutoffs":{"wavefunction":[{"accuracy_level":"standard","value":42,"unit":"Ry"},{"accuracy_level":"high","value":50,"unit":"Ry"},{"accuracy_level":"low","value":38,"unit":"Ry"}]}}}]},"path":"methods_directory/physical/psp"},{"data":{"name":"Plane wave basis","path":"/qm/wf/pw","categories":{"tier1":"qm","tier2":"wf","type":"pw"}},"path":"methods_directory/physical/pw"},{"data":{"name":"Methfessel-Paxton smearing","path":"/qm/wf/smearing/methfessel-paxton","categories":{"tier1":"qm","tier2":"wf","type":"smearing","subtype":"methfessel-paxton"}},"path":"methods_directory/physical/smearing"},{"data":{"name":"Optimized Tetrahedron method (Kawamura)","path":"/qm/wf/tetrahedron/optimized","categories":{"tier1":"qm","tier2":"wf","type":"tetrahedron","subtype":"optimized"}},"path":"methods_directory/physical/tetrahedron"},{"data":{"name":"PZ+U (magnetism)","categories":{"tier1":{"name":"physics-based","slug":"pb"},"tier2":{"name":"quantum-mechanical","slug":"qm"},"tier3":{"name":"density functional theory","slug":"dft"},"type":{"name":"Kohn-Sham DFT","slug":"ksdft"},"subtype":{"name":"Local Density Approximation","slug":"lda"}},"parameters":{"functional":"pz","spinPolarization":"collinear","hubbardType":"U"},"method":{"name":"PW-NCPP (Davidson Diagonalization, Gaussian Smearing)","path":"/qm/wf/pw:/qm/wf/psp/nc?functional=pbe:/qm/wf/smearing/gaussian:/linalg/diag/davidson","units":[{"name":"Plane-wave","path":"/qm/wf/pw","categories":{"tier1":"qm","tier2":"wf","type":"pw"}},{"name":"Norm-conserving PSP","path":"/qm/wf/psp/nc?functional=pbe","categories":{"tier1":"qm","tier2":"wf","type":"psp","subtype":"nc"},"parameters":{"functional":"pbe"}},{"name":"Gaussian Smearing method","path":"/qm/wf/smearing/gaussian","categories":{"tier1":"qm","tier2":"wf","type":"smearing","subtype":"gaussian"}},{"name":"Davidson Diagonalization","path":"/linalg/diag/davidson","categories":{"tier1":"linalg","tier2":"diag","type":"davidson"}}]}},"path":"model/categorized_model"},{"data":{"functional":"pbe","dispersionCorrection":"dft-d3","hubbardType":"u","spinPolarization":"collinear","spinOrbitCoupling":true},"path":"model/model_parameters"},{"data":{"method":{"data":{"pseudo":[]},"subtype":"us","type":"pseudopotential"},"subtype":"gga","type":"dft","functional":"pbe"},"path":"model"},{"data":{"tier1":"pb","tier2":"qm","tier3":"abin","type":"gw","subtype":"evgw"},"path":"models_category/pb/qm/abin/gw"},{"data":{"tier1":"pb","tier2":"qm","tier3":"dft","type":"ksdft"},"path":"models_category/pb/qm/dft/ksdft"},{"data":{"tier1":"pb","tier2":"qm","tier3":"semp"},"path":"models_category/pb/qm/semp"},{"data":{"name":"PBE-D3 (SOC)","categories":{"tier1":"pb","tier2":"qm","tier3":"dft","type":"ksdft","subtype":"gga"},"parameters":{"functional":"pbe","spinOrbitCoupling":true,"dispersionCorrection":"DFT-D3"}},"path":"models_directory/gga"},{"data":{"name":"G0W0@PBE (SOC)","categories":{"tier1":"pb","tier2":"qm","tier3":"abin","type":"gw","subtype":"g0w0"},"parameters":{"functional":"pbe","require":"/pb/qm/dft/ksdft/gga","spinOrbitCoupling":true}},"path":"models_directory/gw"},{"data":{"name":"HSE06 (SOC)","categories":{"tier1":"pb","tier2":"qm","tier3":"dft","type":"ksdft","subtype":"hybrid"},"parameters":{"functional":"hse06","spinOrbitCoupling":true,"spinPolarization":"non-collinear"}},"path":"models_directory/hybrid"},{"data":{"name":"PZ+U (magnetism)","categories":{"tier1":"pb","tier2":"qm","tier3":"dft","type":"ksdft","subtype":"lda"},"parameters":{"functional":"pz","spinPolarization":"collinear","hubbardType":"U"}},"path":"models_directory/lda"},{"data":{"type":"dft","subtype":"gga","functional":"pbe","method":{"data":{"pseudo":[]},"subtype":"us","type":"pseudopotential"}},"path":"models_directory/legacy/dft"},{"data":{"type":"ml","subtype":"re","method":{"data":{"pseudo":[]},"subtype":"us","type":"pseudopotential"}},"path":"models_directory/legacy/ml"},{"data":{"type":"unknown","subtype":"unknown","method":{"data":{"pseudo":[]},"subtype":"us","type":"pseudopotential"}},"path":"models_directory/legacy/unknown"},{"data":{"name":"regression","categories":{"tier1":"st","tier2":"det","tier3":"ml","type":"re"},"parameters":{}},"path":"models_directory/re"},{"data":{"_id":"tvFyik5699io8khi8","chargeRate":{"rate":2},"createdAt":"2019-01-03T23:52:26.809Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"description":"Default project","gid":3000000,"isDefault":true,"name":"Default","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"schemaVersion":"0.2.0","slug":"exadmin-default","tags":[],"updatedAt":"2019-01-04T00:12:37.316Z"},"path":"project"},{"data":{"charge":0,"multiplicity":1},"path":"properties_directory/electronic_configuration"},{"data":{"name":"atomic_radius","value":4},"path":"properties_directory/elemental/atomic_radius"},{"data":{"name":"electronegativity","value":1.1},"path":"properties_directory/elemental/electronegativity"},{"data":{"name":"ionization_potential","value":7.7,"units":"eV"},"path":"properties_directory/elemental/ionization_potential"},{"data":{"name":"band_gaps","values":[{"kpointConduction":[0,0,0],"kpointValence":[0,0,0],"type":"direct","units":"Ry","value":0.0947},{"type":"indirect","units":"Ry","value":0}]},"path":"properties_directory/non-scalar/band_gaps"},{"data":{"name":"band_structure","spin":[0.5,0.5,0.5,0.5],"xAxis":{"label":"kpoints","units":"crystal"},"xDataArray":[[0,0,0],[0.5,0.5,0.5]],"yAxis":{"label":"energy","units":"eV"},"yDataSeries":[[12.1,12.5],[11.1,11.5],[10.1,10.5],[9.5,8.5]]},"path":"properties_directory/non-scalar/band_structure"},{"data":{"name":"charge_density_profile","xAxis":{"label":"z coordinate"},"xDataArray":[-4.89,-4.78,-4.67],"yAxis":{"label":"charge density","units":"e/A"},"yDataSeries":[[2.3697,2.1422,2.0006]]},"path":"properties_directory/non-scalar/charge_density_profile"},{"data":{"legend":[{"electronicState":"2s","element":"C","index":1,"spin":0.5},{"electronicState":"2p","element":"C","index":2,"spin":0.5}],"name":"density_of_states","xAxis":{"label":"energy","units":"eV"},"xDataArray":[[0,0,0],[0.5,0.5,0.5]],"yAxis":{"label":"density of states","units":"states/unitcell"},"yDataSeries":[[12.1,12.5],[11.1,11.5],[10.1,10.5],[9.5,8.5]]},"path":"properties_directory/non-scalar/density_of_states"},{"data":{"name":"dielectric_tensor","values":[{"part":"real","spin":0.5,"frequencies":[0,0.06012024,0.120240481,0.180360721],"components":[[0,0,0],[0.019862988,0.019862988,0.019862987],[0.039813564,0.039813565,0.039813563],[0.059940387,0.059940389,0.059940385]]},{"part":"imaginary","spin":0.5,"frequencies":[0,0.06012024,0.120240481,0.180360721],"components":[[0,0,0],[0.019862988,0.019862988,0.019862987],[0.039813564,0.039813565,0.039813563],[0.059940387,0.059940389,0.059940385]]},{"part":"real","spin":-0.5,"frequencies":[0,0.06012024,0.120240481,0.180360721],"components":[[0,0,0],[0.019862988,0.019862988,0.019862987],[0.039813564,0.039813565,0.039813563],[0.059940387,0.059940389,0.059940385]]},{"part":"imaginary","spin":-0.5,"frequencies":[0,0.06012024,0.120240481,0.180360721],"components":[[0,0,0],[0.019862988,0.019862988,0.019862987],[0.039813564,0.039813565,0.039813563],[0.059940387,0.059940389,0.059940385]]}]},"path":"properties_directory/non-scalar/dielectric_tensor"},{"data":{"name":"file_content","basename":"my_json.json","filetype":"text","objectData":{"CONTAINER":"production-20160630-cluster-001","NAME":"/cluster-001-home/jrd101/data/jrd101-default/kernel-train-Cxmkj97aXKZeaRZov/Cxmkj97aXKZeaRZov.json","PROVIDER":"aws","REGION":"us-east-1","SIZE":6582,"TIMESTAMP":"1614217411"}},"path":"properties_directory/non-scalar/file_content"},{"data":{"name":"formation_energy_contributions","values":[{"formula":"SiC","n_atoms":4,"is_elemental":false,"total_energy":-520.003969643439,"total_energy_per_atom":-130.00099241085974,"precision_value":8192,"precision_metric":"KPPRA"},{"formula":"Si","n_atoms":2,"is_elemental":true,"total_energy":-261.003969643439,"total_energy_per_atom":-130.5019848217195,"precision_value":8192,"precision_metric":"KPPRA"},{"formula":"C","n_atoms":2,"is_elemental":true,"total_energy":-321.003969643439,"total_energy_per_atom":-160.5019848217195,"precision_value":8000,"precision_metric":"KPPRA"}]},"path":"properties_directory/non-scalar/formation_energy_contributions"},{"data":{"name":"hubbard_u","units":"eV","values":[{"id":1,"atomicSpecies":"Co1","orbitalName":"3d","value":6.7553},{"id":2,"atomicSpecies":"Co2","orbitalName":"3d","value":6.7553},{"id":3,"atomicSpecies":"O","orbitalName":"3p","value":2.2438}]},"path":"properties_directory/non-scalar/hubbard_u"},{"data":{"name":"hubbard_v","units":"eV","values":[{"id":1,"atomicSpecies":"Co","id2":1,"atomicSpecies2":"Co","distance":0,"value":7.7514},{"id":1,"atomicSpecies":"Co","id2":19,"atomicSpecies2":"O","distance":3.630748,"value":0.7573}]},"path":"properties_directory/non-scalar/hubbard_v"},{"data":{"name":"hubbard_v_nn","units":"eV","values":[{"id":1,"atomicSpecies":"Co","orbitalName":"3d","id2":1,"atomicSpecies2":"Co","orbitalName2":"3d","value":7.7514},{"id":1,"atomicSpecies":"Co","orbitalName":"3d","id2":19,"atomicSpecies2":"O","orbitalName2":"2p","value":0.7573}]},"path":"properties_directory/non-scalar/hubbard_v_nn"},{"data":{"name":"hysteresis_loop","legend":["on","off"],"xAxis":{"label":"bias","units":"V"},"yAxis":{"label":"response","units":"m"},"xDataArray":[1.20192,2.40385,3.60577,4.80769,6.00961,7.21154,8.41346,9.61539,10.8173,12.0192,13.2212,14.4231,15.625,16.8269,18.0288,19.2308,19.5673,18.3654,17.1635,15.9615,14.7596,13.5577,12.3558,11.1538,9.95192,8.75,7.54808,6.34615,5.14423,3.94231,2.74039,1.53846,0.336537,-0.865384,-2.06731,-3.26923,-4.47115,-5.67308,-6.875,-8.07692,-9.27885,-10.4808,-11.6827,-12.8846,-14.0865,-15.2885,-16.4904,-17.6923,-18.8942,-19.9038,-18.7019,-17.5,-16.2981,-15.0962,-13.8942,-12.6923,-11.4904,-10.2885,-9.08654,-7.88462,-6.68269,-5.48077,-4.27885,-3.07692,-1.875,-0.673077,0.528846,1.73077,2.93269,4.13461,5.33654,6.53846,7.74039,8.94231,10.1442,11.3462,12.5481,13.75,14.9519,16.1538,17.3558,18.5577,19.7596,19.0385,17.8365,16.6346,15.4327,14.2308,13.0288,11.8269,10.625,9.42308,8.22115,7.01923,5.81731,4.61539,3.41346,2.21154,1.00961,-0.192307,-1.39423,-2.59615,-3.79808,-5,-6.20192,-7.40385,-8.60577,-9.80769,-11.0096,-12.2115,-13.4135,-14.6154,-15.8173,-17.0192,-18.2212,-19.4231,-19.375,-18.1731,-16.9712,-15.7692,-14.5673,-13.3654,-12.1635,-10.9615,-9.75962,-8.55769,-7.35577,-6.15385,-4.95192,-3.75,-2.54808,-1.34615,-0.144231,1.05769,2.25961,3.46154,4.66346,5.86539,7.06731,8.26923,9.47115,10.6731,11.875,13.0769,14.2788,15.4808,16.6827,17.8846,19.0865,19.7115,18.5096,17.3077,16.1058,14.9038,13.7019,12.5,11.2981,10.0962,8.89423,7.69231,6.49039,5.28846,4.08654,2.88461,1.68269,0.480769,-0.721154,-1.92308,-3.125,-4.32692,-5.52885,-6.73077,-7.93269,-9.13462,-10.3365,-11.5385,-12.7404,-13.9423,-15.1442,-16.3462,-17.5481,-18.75,-19.9519,-18.8462,-17.6442,-16.4423,-15.2404,-14.0385,-12.8365,-11.6346,-10.4327,-9.23077,-8.02885,-6.82692,-5.625,-4.42308,-3.22115,-2.01923],"yDataSeries":[[2.7067e-10,3.43727e-10,4.17108e-10,4.77289e-10,5.32388e-10,5.79596e-10,6.24809e-10,6.61832e-10,6.98462e-10,7.30993e-10,7.63557e-10,7.98674e-10,8.29534e-10,8.63411e-10,8.887e-10,9.20652e-10,9.21695e-10,8.80891e-10,8.43738e-10,8.03401e-10,7.62573e-10,7.18925e-10,6.81222e-10,6.32928e-10,5.84974e-10,5.34979e-10,4.79443e-10,4.20389e-10,3.57738e-10,2.91616e-10,2.20564e-10,1.48069e-10,7.30952e-11,3.29133e-12,-5.80898e-11,-1.11795e-10,-1.60607e-10,-2.02787e-10,-2.42349e-10,-2.7952e-10,-3.1582e-10,-3.53609e-10,-3.86647e-10,-4.21641e-10,-4.53402e-10,-4.83528e-10,-5.16028e-10,-5.47231e-10,-5.78852e-10,-6.02987e-10,-5.49701e-10,-5.08528e-10,-4.68442e-10,-4.27919e-10,-3.83805e-10,-3.40192e-10,-2.95684e-10,-2.50059e-10,-2.02482e-10,-1.51353e-10,-9.87699e-11,-4.24764e-11,1.91664e-11,8.43303e-11,1.52023e-10,2.20326e-10,2.84717e-10,3.43661e-10,3.94267e-10,4.37121e-10,4.79405e-10,5.16516e-10,5.53751e-10,5.91107e-10,6.27672e-10,6.6037e-10,6.98175e-10,7.28398e-10,7.66648e-10,8.0065e-10,8.36584e-10,8.66081e-10,8.99792e-10,8.72467e-10,8.36049e-10,7.96997e-10,7.58506e-10,7.18546e-10,6.77449e-10,6.3361e-10,5.93596e-10,5.46657e-10,4.9523e-10,4.42582e-10,3.86584e-10,3.26483e-10,2.62618e-10,1.95991e-10,1.25953e-10,5.73735e-11,-6.42764e-12,-6.24288e-11,-1.12384e-10,-1.56527e-10,-1.96608e-10,-2.35829e-10,-2.73505e-10,-3.09523e-10,-3.44914e-10,-3.80621e-10,-4.1484e-10,-4.49146e-10,-4.83256e-10,-5.12168e-10,-5.41102e-10,-5.72105e-10,-5.58904e-10,-5.11986e-10,-4.69288e-10,-4.27903e-10,-3.84942e-10,-3.46951e-10,-3.03218e-10,-2.61793e-10,-2.17078e-10,-1.69952e-10,-1.21017e-10,-6.87156e-11,-1.37561e-11,4.68326e-11,1.10493e-10,1.75156e-10,2.40635e-10,3.00113e-10,3.52681e-10,3.97036e-10,4.39482e-10,4.77115e-10,5.14797e-10,5.51377e-10,5.89004e-10,6.22529e-10,6.57697e-10,6.92107e-10,7.24515e-10,7.61409e-10,7.92525e-10,8.27643e-10,8.56915e-10,8.77273e-10,8.3633e-10,8.00425e-10,7.62858e-10,7.22021e-10,6.85171e-10,6.4194e-10,6.01668e-10,5.58183e-10,5.11179e-10,4.63127e-10,4.09545e-10,3.54724e-10,2.94899e-10,2.30449e-10,1.644e-10,9.78382e-11,3.33769e-11,-2.58376e-11,-7.56802e-11,-1.21736e-10,-1.63229e-10,-1.99928e-10,-2.3761e-10,-2.75695e-10,-3.11106e-10,-3.43283e-10,-3.78828e-10,-4.15784e-10,-4.47948e-10,-4.78554e-10,-5.14923e-10,-5.37169e-10,-5.66308e-10,-5.2048e-10,-4.82419e-10,-4.40989e-10,-4.02148e-10,-3.59473e-10,-3.21567e-10,-2.79506e-10,-2.36491e-10,-1.9395e-10,-1.44892e-10,-9.70266e-11,-4.509e-11,1.26783e-11,7.19689e-11,1.35595e-10],[-1.64063e-10,-1.60103e-10,-1.51936e-10,-1.41196e-10,-1.21421e-10,-9.40815e-11,-6.49944e-11,-3.40422e-11,-1.16721e-11,4.92151e-12,2.60466e-11,3.79564e-11,4.86376e-11,5.39352e-11,5.85865e-11,5.74397e-11,5.79713e-11,5.22842e-11,4.74628e-11,4.00973e-11,3.47253e-11,2.85547e-11,2.05068e-11,1.20448e-11,3.59505e-12,-4.76362e-12,-1.47286e-11,-2.51546e-11,-3.20371e-11,-3.72617e-11,-4.39241e-11,-4.75609e-11,-5.12586e-11,-6.03925e-11,-7.61497e-11,-9.99957e-11,-1.29939e-10,-1.60242e-10,-1.90566e-10,-2.18586e-10,-2.41915e-10,-2.63762e-10,-2.8286e-10,-2.98204e-10,-3.06581e-10,-3.14312e-10,-3.2e-10,-3.24044e-10,-3.28805e-10,-3.29869e-10,-3.25817e-10,-3.22404e-10,-3.20743e-10,-3.18478e-10,-3.14785e-10,-3.11504e-10,-3.0783e-10,-3.00555e-10,-2.96678e-10,-2.89022e-10,-2.80993e-10,-2.75092e-10,-2.71543e-10,-2.67306e-10,-2.60934e-10,-2.55416e-10,-2.49448e-10,-2.36684e-10,-2.16419e-10,-1.88912e-10,-1.58713e-10,-1.3069e-10,-1.03965e-10,-8.27017e-11,-6.10282e-11,-4.43228e-11,-2.75268e-11,-1.49456e-11,-3.53816e-12,4.97525e-12,1.23482e-11,1.87056e-11,2.16799e-11,2.25353e-11,2.02263e-11,1.74585e-11,1.35038e-11,8.40191e-12,2.73792e-12,-3.19448e-12,-1.06825e-11,-1.79791e-11,-2.57253e-11,-3.36877e-11,-4.12793e-11,-4.81805e-11,-5.39297e-11,-5.92621e-11,-6.39233e-11,-6.76149e-11,-7.80569e-11,-9.66015e-11,-1.20051e-10,-1.47449e-10,-1.73673e-10,-1.98962e-10,-2.19732e-10,-2.40654e-10,-2.57707e-10,-2.72796e-10,-2.84712e-10,-2.94389e-10,-3.02628e-10,-3.03868e-10,-3.1244e-10,-3.11252e-10,-3.07786e-10,-3.11349e-10,-3.04661e-10,-3.01879e-10,-2.98718e-10,-2.96932e-10,-2.91676e-10,-2.87424e-10,-2.83606e-10,-2.7856e-10,-2.72587e-10,-2.65614e-10,-2.62722e-10,-2.5838e-10,-2.54931e-10,-2.49565e-10,-2.45131e-10,-2.35568e-10,-2.19551e-10,-1.96441e-10,-1.68637e-10,-1.42563e-10,-1.19264e-10,-9.64361e-11,-7.74081e-11,-5.98814e-11,-4.60838e-11,-3.32449e-11,-2.0713e-11,-1.29607e-11,-5.44316e-12,5.31962e-13,5.19564e-12,8.50953e-12,6.03964e-12,4.80219e-12,3.29136e-12,-1.51693e-12,-5.00767e-12,-9.281e-12,-1.59506e-11,-2.32972e-11,-2.91384e-11,-3.75897e-11,-4.30144e-11,-4.95511e-11,-5.59639e-11,-5.94251e-11,-6.40112e-11,-6.79308e-11,-7.40984e-11,-8.84928e-11,-1.08553e-10,-1.31977e-10,-1.58705e-10,-1.82929e-10,-2.06298e-10,-2.22741e-10,-2.41527e-10,-2.56774e-10,-2.67697e-10,-2.77716e-10,-2.85878e-10,-2.92823e-10,-2.95229e-10,-2.96206e-10,-2.9886e-10,-2.97973e-10,-2.96114e-10,-2.93259e-10,-2.90471e-10,-2.86182e-10,-2.84411e-10,-2.80976e-10,-2.76009e-10,-2.71553e-10,-2.66765e-10,-2.60681e-10,-2.5685e-10,-2.54596e-10,-2.507e-10,-2.45596e-10]],"parameters":{"on":{"imprint":{"value":-0.0945645,"standardDeviation":0.201563,"count":8},"coerciveVoltage":{"rising":{"value":-1.69559,"standardDeviation":0.563452,"count":8},"falling":{"value":1.50646,"standardDeviation":0.390574,"count":8}},"loopWidth":{"value":3.20206,"standardDeviation":0.881783,"count":8},"loopHeight":{"value":1.87428e-10,"standardDeviation":7.31456e-11,"count":8},"remanentResponse":{"rising":{"value":2.52078e-10,"standardDeviation":3.3268e-11,"count":8},"falling":{"value":6.465e-11,"standardDeviation":4.74947e-11,"count":8}}},"off":{"imprint":{"value":0.264414,"standardDeviation":0.199464,"count":8},"coerciveVoltage":{"rising":{"value":5.54018,"standardDeviation":0.390596,"count":8},"falling":{"value":-5.01135,"standardDeviation":0.462897,"count":8}},"loopWidth":{"value":10.5515,"standardDeviation":0.757981,"count":8},"loopHeight":{"value":1.84282e-10,"standardDeviation":7.23293e-11,"count":8},"remanentResponse":{"rising":{"value":-2.48029e-10,"standardDeviation":3.33361e-11,"count":8},"falling":{"value":-6.37461e-11,"standardDeviation":4.74305e-11,"count":8}}}}},"path":"properties_directory/non-scalar/hysteresis_loop"},{"data":{"name":"phonon_dispersions","xAxis":{"label":"qpoints","units":"crystal"},"xDataArray":[[0,0,0],[0.5,0.05,0.05]],"yAxis":{"label":"frequency","units":"cm-1"},"yDataSeries":[[-0.000006,-0.000006,-0.000005,734.596987,734.618837,734.618837],[-6.859784,-6.859784,36.443014,730.782803,731.143013,731.143013]]},"path":"properties_directory/non-scalar/phonon_dispersions"},{"data":{"name":"phonon_dos","xAxis":{"label":"frequency","units":"cm-1"},"xDataArray":[[565,566,567,568,569,570,571,572,573]],"yAxis":{"label":"Phonon DOS","units":"states/cm-1"},"yDataSeries":[[0.0001433,0.00011382,0.000087721,0.00006502,0.000045713,0.000029799,0.000017279,0.0000081527,0.0000024197]]},"path":"properties_directory/non-scalar/phonon_dos"},{"data":{"name":"potential_profile","xAxis":{"label":"z coordinate"},"xDataArray":[-4.89,-4.78,-4.67],"yAxis":{"label":"energy","units":"eV"},"yDataSeries":[[-6.5847438,-7.0900648,-7.5601238],[6.4872255,8.2828137,10.1322914],[-0.0975183,1.192749,2.5721676]]},"path":"properties_directory/non-scalar/potential_profile"},{"data":{"name":"reaction_energy_profile","xAxis":{"label":"reaction coordinate"},"xDataArray":[0,0.1932731666,0.3596118308,0.4999998753,0.640387977,0.8067267116,1],"yAxis":{"label":"energy","units":"eV"},"yDataSeries":[[0,0.0336637211,0.1282952413,0.2032895454,0.1282953846,0.0336637671,-5.3e-9]]},"path":"properties_directory/non-scalar/reaction_energy_profile"},{"data":{"name":"stress_tensor","units":"kbar","value":[[3,0,0],[0,3,0],[0,0,3]]},"path":"properties_directory/non-scalar/stress_tensor"},{"data":{"PAWDoubleCounting2":{"name":"PAW_double-counting_correction_2","value":12658.30538857},"PAWDoubleCounting3":{"name":"PAW_double-counting_correction_3","value":-12074.85364512},"alphaZ":{"name":"alphaZ","value":1056.91493097},"atomicEnergy":{"name":"atomic_energy","value":15740.5725788},"eigenvalues":{"name":"eigenvalues","value":-577.80127102},"ewald":{"name":"ewald","value":128376.45871064},"exchange":{"name":"exchange","value":0},"exchangeCorrelation":{"name":"exchange_correlation","value":41.63693035},"hartree":{"name":"hartree","value":-145344.66902862},"name":"total_energy_contributions","temperatureEntropy":{"name":"temperature_entropy","value":-0.00032545},"units":"eV"},"path":"properties_directory/non-scalar/total_energy_contributions"},{"data":{"name":"vibrational_spectrum","xAxis":{"label":"wavenumber","units":"cm-1"},"xDataArray":[[1625.972,3631.832,3735.535]],"yAxis":{"label":"Absorption coefficient","units":"km/mol"},"yDataSeries":[[46.681,1.139,14.281]]},"path":"properties_directory/non-scalar/vibrational_spectrum"},{"data":{"yDataSeries":[[0,0.1,0.3,0.5,0.7,0.9,1,0.9,0.7,0.5,0.3,0.1,0]],"yAxis":{"label":"amplitude"},"xDataArray":[-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6],"xAxis":{"label":"coordinate"},"name":"wavefunction_amplitude"},"path":"properties_directory/non-scalar/wavefunction_amplitude"},{"data":{"name":"defect_formation_energy","units":"eV","value":3.5},"path":"properties_directory/scalar/defect_formation_energy"},{"data":{"name":"electron_affinity","units":"eV","value":2.5},"path":"properties_directory/scalar/electron_affinity"},{"data":{"name":"fermi_energy","units":"eV","value":-1.2},"path":"properties_directory/scalar/fermi_energy"},{"data":{"name":"formation_energy","units":"eV","value":-123.43573079},"path":"properties_directory/scalar/formation_energy"},{"data":{"name":"interfacial_energy","units":"eV/A^2","value":0.02},"path":"properties_directory/scalar/interfacial_energy"},{"data":{"name":"ionization_potential","units":"eV","value":14},"path":"properties_directory/scalar/ionization_potential"},{"data":{"name":"pressure","units":"kbar","value":-27.345},"path":"properties_directory/scalar/pressure"},{"data":{"name":"reaction_energy_barrier","units":"eV","value":-123.43573079},"path":"properties_directory/scalar/reaction_energy_barrier"},{"data":{"name":"surface_energy","units":"eV/A^2","value":0.02},"path":"properties_directory/scalar/surface_energy"},{"data":{"name":"thermal_correction_to_energy","units":"kcal/mol","value":15.033},"path":"properties_directory/scalar/thermal_correction_to_energy"},{"data":{"name":"thermal_correction_to_enthalpy","units":"kcal/mol","value":15.626},"path":"properties_directory/scalar/thermal_correction_to_enthalpy"},{"data":{"name":"total_energy","units":"eV","value":-123.43573079},"path":"properties_directory/scalar/total_energy"},{"data":{"name":"total_force","units":"eV/angstrom","value":0.000001},"path":"properties_directory/scalar/total_force"},{"data":{"name":"valence_band_offset","units":"eV","value":0.245},"path":"properties_directory/scalar/valence_band_offset"},{"data":{"name":"zero_point_energy","units":"eV","value":-123.43573079},"path":"properties_directory/scalar/zero_point_energy"},{"data":{"name":"atomic_forces","units":"eV/bohr","values":[{"id":1,"value":[-3.9e-7,-2.4e-7,0]},{"id":2,"value":[3.9e-7,2.4e-7,0]}]},"path":"properties_directory/structural/atomic_forces"},{"data":{"name":"atomic_constraints","values":[{"id":1,"value":[true,false,true]},{"id":2,"value":[false,false,true]}]},"path":"properties_directory/structural/basis/atomic_constraints_property"},{"data":{"id":1,"value":[0,0,0]},"path":"properties_directory/structural/basis/atomic_coordinate"},{"data":[{"id":1,"value":[0,0,0]},{"id":2,"value":[0.25,0.25,0.25]}],"path":"properties_directory/structural/basis/atomic_coordinates"},{"data":{"id":1,"value":"Si"},"path":"properties_directory/structural/basis/atomic_element"},{"data":[{"id":0,"value":"Si"},{"id":1,"value":"Si"}],"path":"properties_directory/structural/basis/atomic_elements"},{"data":{"id":0,"value":3},"path":"properties_directory/structural/basis/atomic_label"},{"data":[{"id":0,"value":"1"},{"id":1,"value":2}],"path":"properties_directory/structural/basis/atomic_labels"},{"data":[{"atomPair":[{"id":1},{"id":2}],"bondType":"single"},{"atomPair":[{"id":3},{"id":4}],"bondType":"double"}],"path":"properties_directory/structural/basis/bonds"},{"data":{"bonds":[{"0":{"atomPair":[{"id":1},{"id":2}],"bondType":"single"},"1":{"atomPair":[{"id":3},{"id":4}],"bondType":"double"}}],"coordinates":[{"id":1,"value":[0,0,0]}],"elements":[{"id":1,"value":"Si"}],"name":"basis","units":"crystal"},"path":"properties_directory/structural/basis"},{"data":{"name":"density","units":"g/cm^3","value":2.33},"path":"properties_directory/structural/density"},{"data":{"element":"Si","name":"elemental_ratio","value":0.71},"path":"properties_directory/structural/elemental_ratio"},{"data":{"name":"inchi","value":"1S/C6H6/c1-2-4-6-5-3-1/h1-6H"},"path":"properties_directory/structural/inchi"},{"data":{"name":"inchi_key","value":"UHOVQNZJYSORNB-UHFFFAOYSA-N"},"path":"properties_directory/structural/inchi_key"},{"data":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"},"path":"properties_directory/structural/lattice/vectors"},{"data":{"name":"lattice","a":5.14,"alpha":90,"b":5.14,"beta":90,"c":5.14,"gamma":90,"type":"CUB","units":{"angle":"degree","length":"angstrom"},"vectors":{"a":[5,0.000121312,0.000131415],"alat":1,"b":[0.000121312,5,0.000121314],"c":[0.000121313,0.000121312,5],"units":"angstrom"}},"path":"properties_directory/structural/lattice"},{"data":{"name":"magnetic_moments","units":"uB","values":[{"id":1,"value":[0,0,1.235]},{"id":2,"value":[0,0,-1.235]}]},"path":"properties_directory/structural/magnetic_moments"},{"data":[{"SMARTS":"[O&D1]-C(=O)[#6X3]","atoms":[{"id":1,"isConnector":false},{"id":2,"isConnector":false},{"id":3,"isConnector":false},{"id":4,"isConnector":true}],"name":"functional_group"},{"atoms":[{"id":1,"isConnector":true},{"id":2,"isConnector":false},{"id":3,"isConnector":true}],"name":"special_bond"},{"atoms":[{"id":1,"isConnector":false},{"id":2,"isConnector":false},{"id":3,"isConnector":false},{"id":4,"isConnector":false},{"id":5,"isConnector":false},{"id":6,"isConnector":true}],"isAromatic":true,"name":"ring"}],"path":"properties_directory/structural/molecular_pattern"},{"data":{"degree":10,"name":"p-norm","value":0.71},"path":"properties_directory/structural/p-norm"},{"data":{"name":"symmetry","pointGroupSymbol":"C2v","spaceGroupSymbol":"Fd-3m","tolerance":{"units":"angstrom","value":0.3}},"path":"properties_directory/structural/symmetry"},{"data":{"name":"volume","units":"angstrom^3","value":131.1},"path":"properties_directory/structural/volume"},{"data":{"name":"convergence_electronic","data":[[-123.45678,-12.345678,-1.2345678,-0.1234567,-0.0123456,-0.0012345,-0.0001234]],"tolerance":0.001,"units":"Ry"},"path":"properties_directory/workflow/convergence/electronic"},{"data":{"name":"convergence_ionic","data":[{"electronic":{"data":[0.10303193,0.04365779,0.00051472,0.00007496,0.00000309,5.6e-7],"units":"eV"},"energy":-123.45678}],"tolerance":0.001,"units":"eV"},"path":"properties_directory/workflow/convergence/ionic"},{"data":{"data":[{"grid":{"dimensions":[1,1,1],"shifts":[0,0,0]},"value":"-123.45678"}],"property":"total_energy","tolerance":0.001,"units":"eV"},"path":"properties_directory/workflow/convergence/kpoint"},{"data":{"_id":"K3McGkqXh28HJ775m","createdAt":"2018-11-19 06:41:46.877Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"data":{"name":"pressure","units":"kbar","value":-149.03},"group":"qe:dft:gga:pbe","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"repetition":0,"schemaVersion":"0.2.0","slug":"pressure","source":{"type":"exabyte","info":{"jobId":"XnYKCmgaAAzSQH5ac","unitId":"873d0293d04af431d31f07a0-pw-scf"}},"exabyteId":["XnYKCmgaAAzSQH5ac"]},"path":"property/holder"},{"data":{"_id":"aScN01448r0c00Xy1","label":"r0c00","metadata":{},"name":"PDAC_COM5_01448 r0c00","position":{"coordinates":[0.021064,0.020812999],"units":"m"},"schemaVersion":"0.2.0","slug":"pdac-com5-01448-r0c00"},"path":"sample"},{"data":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","build":"GNU","version":"6.3","hasAdvancedComputeOptions":true,"isUsingMaterial":true},"path":"software/application"},{"data":{"name":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","advancedComputeOptions":true,"isDefault":true,"monitors":[{"name":"standard_output"}],"postProcessors":[],"preProcessors":[],"results":[{"name":"atomic_forces"}]},"path":"software/executable"},{"data":{"name":"pw_scf","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","input":[{"name":"in.scf","templateId":"dJ7HYz5pQ4AuN5qc9"}],"postProcessors":[],"preProcessors":[],"monitors":[],"results":[]},"path":"software/flavor"},{"data":{"name":"kpoints_grid","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","content":"K_POINTS automatic\n{{nkx}} {{nky}} {{nkz}} 0 0 0","contextProviders":[{"name":"KGridManagerMixin"}]},"path":"software/template"},{"data":{"nband":1,"npools":1,"ntg":1},"path":"software_directory/modeling/espresso/arguments"},{"data":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","version":"7.2","build":"GNU"},"path":"software_directory/modeling/espresso"},{"data":{"name":"NWChem","summary":"NWChem: a comprehensive and scalable open-source solution for large scale molecular simulations","shortName":"nwchem","version":"6.6","exec":"nwchem","build":"GNU"},"path":"software_directory/modeling/nwchem"},{"data":{"application":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","version":"7.2","build":"GNU"},"flowchartId":"modeling","head":true,"input":[{"template":{"name":"kpoints_grid","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","content":"K_POINTS automatic\n{{nkx}} {{nky}} {{nkz}} 0 0 0","contextProviders":[{"name":"KGridManagerMixin"}]},"rendered":"K_POINTS automatic\n2 2 2 0 0 0","isManuallyChanged":false}],"name":"modeling","status":"idle","type":"execution","preProcessors":[],"postProcessors":[],"monitors":[],"results":[],"context":[],"executable":{"name":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","advancedComputeOptions":true,"isDefault":true,"monitors":[{"name":"standard_output"}],"postProcessors":[],"preProcessors":[],"results":[{"name":"atomic_forces"}]},"flavor":{"name":"pw_scf","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","input":[{"name":"in.scf","templateId":"dJ7HYz5pQ4AuN5qc9"}],"postProcessors":[],"preProcessors":[],"monitors":[],"results":[]}},"path":"software_directory/modeling/unit/execution"},{"data":{"name":"vasp","shortName":"vasp","summary":"vienna ab-initio simulation package","version":"5.3.5","build":"GNU"},"path":"software_directory/modeling/vasp"},{"data":{"exec":"jupyter","flavor":"notebook","name":"jupyterLab","shortName":"jl","summary":"Jupyter Lab","version":"0.33.12","build":"GNU"},"path":"software_directory/scripting/jupyter-lab"},{"data":{"exec":"python","flavor":"python2","name":"python","shortName":"py","summary":"Python Script","version":"2.7.5","build":"GNU"},"path":"software_directory/scripting/python"},{"data":{"exec":"sh","flavor":"sh","name":"shell","shortName":"sh","summary":"Shell Script","version":"4.2.46","build":"GNU"},"path":"software_directory/scripting/shell"},{"data":{"application":{"exec":"python","flavor":"python2","name":"python","shortName":"py","summary":"Python Script","version":"2.7.5","build":"GNU"},"compute":null,"flowchartId":"scripting","head":true,"input":[{"template":{"name":"kpoints_grid","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","content":"K_POINTS automatic\n{{nkx}} {{nky}} {{nkz}} 0 0 0","contextProviders":[{"name":"KGridManagerMixin"}]},"rendered":"K_POINTS automatic\n2 2 2 0 0 0","isManuallyChanged":false}],"name":"scripting","status":"idle","type":"execution","preProcessors":[],"postProcessors":[],"monitors":[],"results":[],"executable":{"name":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","advancedComputeOptions":true,"isDefault":true,"monitors":[{"name":"standard_output"}],"postProcessors":[],"preProcessors":[],"results":[{"name":"atomic_forces"}]},"flavor":{"name":"pw_scf","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","input":[{"name":"in.scf","templateId":"dJ7HYz5pQ4AuN5qc9"}],"postProcessors":[],"preProcessors":[],"monitors":[],"results":[]},"context":[]},"path":"software_directory/scripting/unit/execution"},{"data":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Material","slug":"silicon-fcc"},"path":"system/_material"},{"data":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Job","slug":"parent-job"},"path":"system/_parent_job"},{"data":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Project","slug":"project-default"},"path":"system/_project"},{"data":{"key":"basis.coordinates.0","name":"atomsTooClose","severity":"warning","message":"Atom 0 is too close to atom X"},"path":"system/consistency_check"},{"data":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"path":"system/creator"},{"data":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Class","slug":"Slug"},"path":"system/entity_reference"},{"data":{"extension":"poscar","filename":"POSCAR.mp-546794_SiO2.poscar","text":"Si4 O8\n1.0\n5.073173 0.000000 0.000000\n0.000000 5.073173 0.000000\n0.000000 0.000000 7.359653\nSi O\n4 8\ndirect\n0.000000 0.500000 0.250000 Si\n0.500000 0.500000 0.500000 Si\n0.500000 0.000000 0.750000 Si\n0.000000 0.000000 0.000000 Si\n0.750000 0.584672 0.375000 O\n0.915328 0.250000 0.125000 O\n0.084672 0.750000 0.125000 O\n0.250000 0.415328 0.375000 O\n0.250000 0.084672 0.875000 O\n0.415328 0.750000 0.625000 O\n0.584672 0.250000 0.625000 O\n0.750000 0.915328 0.875000 O","hash":"fce4c03798763a9ed8bf64d762c7fbfd"},"path":"system/file_source"},{"data":{"type":"from-iframe-to-host","action":"set-data","payload":{"property":{"name":"material"}}},"path":"system/iframe_message"},{"data":{"header":{"entity":{"_id":"FPjAaKfuYAL7tiHbm","flowchartId":"pw_scf","name":"unit"},"timestamp":1234923492.12,"version":"0.2.0"},"payload":{"name":"total_energy","units":"eV","value":-123.43573079}},"path":"system/message"},{"data":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"path":"system/owner"},{"data":{"preProcessors":[],"postProcessors":[],"monitors":[{"name":"standard_output"}],"results":[{"name":"atomic_forces"}]},"path":"system/runtime_items"},{"data":{"_id":"LCthJ6E2QabYCZqf4","application":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","build":"GNU","version":"6.3","hasAdvancedComputeOptions":true,"isUsingMaterial":true},"model":{"method":{"data":{"pseudo":[]},"subtype":"us","type":"pseudopotential"},"subtype":"gga","type":"dft","functional":"pbe"},"name":"Band Structure","properties":["band_structure"],"units":[{"application":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","build":"GNU","version":"6.3","hasAdvancedComputeOptions":true,"isUsingMaterial":true},"compute":null,"executable":{"name":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","advancedComputeOptions":true,"isDefault":true,"monitors":[{"name":"standard_output"}],"postProcessors":[],"preProcessors":[],"results":[{"name":"atomic_forces"}]},"flavor":{"name":"pw_scf","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","input":[{"name":"in.scf","templateId":"dJ7HYz5pQ4AuN5qc9"}],"postProcessors":[],"preProcessors":[],"monitors":[],"results":[]},"flowchartId":"execution","head":true,"input":[{"template":{"name":"kpoints_grid","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","content":"K_POINTS automatic\n{{nkx}} {{nky}} {{nkz}} 0 0 0","contextProviders":[{"name":"KGridManagerMixin"}]},"rendered":"K_POINTS automatic\n2 2 2 0 0 0","isManuallyChanged":false}],"monitors":[{"name":"scf_accuracy"},{"name":"standard_output"}],"name":"execution","next":"pw-bands","postProcessors":[],"preProcessors":[],"results":[{"name":"harris_foulkes_estimate"}],"status":"idle","type":"execution","context":[]}]},"path":"workflow/subworkflow"},{"data":{"flowchartId":"assignment","head":true,"input":[{"name":"N_K_x","scope":"global"},{"name":"N_K_y","scope":"global"}],"name":"assignment","operand":"N_K_x","status":"idle","type":"assignment","value":"N_K_x+N_K_y+1","preProcessors":[],"postProcessors":[],"monitors":[],"results":[]},"path":"workflow/unit/assignment"},{"data":{"else":"sample_id_6","flowchartId":"condition","head":true,"input":[{"name":"x","scope":"global"},{"name":"total_energy","scope":"sample_id_2"}],"maxOccurrences":100,"name":"condition","statement":"abs(x-total_energy) < 1e-5","status":"idle","then":"sample_id_4","throwException":true,"type":"condition","preProcessors":[],"postProcessors":[],"monitors":[],"results":[]},"path":"workflow/unit/condition"},{"data":{"application":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","build":"GNU","version":"6.3","hasAdvancedComputeOptions":true,"isUsingMaterial":true},"compute":null,"executable":{"name":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","advancedComputeOptions":true,"isDefault":true,"monitors":[{"name":"standard_output"}],"postProcessors":[],"preProcessors":[],"results":[{"name":"atomic_forces"}]},"flavor":{"name":"pw_scf","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","input":[{"name":"in.scf","templateId":"dJ7HYz5pQ4AuN5qc9"}],"postProcessors":[],"preProcessors":[],"monitors":[],"results":[]},"flowchartId":"execution","head":true,"input":[{"template":{"name":"kpoints_grid","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","content":"K_POINTS automatic\n{{nkx}} {{nky}} {{nkz}} 0 0 0","contextProviders":[{"name":"KGridManagerMixin"}]},"rendered":"K_POINTS automatic\n2 2 2 0 0 0","isManuallyChanged":false}],"monitors":[{"name":"scf_accuracy"},{"name":"standard_output"}],"name":"execution","next":"pw-bands","postProcessors":[],"preProcessors":[],"results":[{"name":"harris_foulkes_estimate"}],"status":"idle","type":"execution","context":[]},"path":"workflow/unit/execution"},{"data":{"name":"N_K_y","scope":"global"},"path":"workflow/unit/input/_inputItemScope"},{"data":{"type":"api","endpoint":"data-frame","endpoint_options":{"data":{"features":["elemental_ratio:Si","elemental_ratio:Ge","ionization_potential:Ge","ionization_potential:Si"],"ids":["KuAsBRwofzGfHPWiT"],"targets":["band_gaps:indirect","band_gaps:direct"]},"headers":{"X-Auth-Token":"","X-User-Id":""},"method":"POST","params":{"query":{"formula":"SiGe"}}},"name":"DATA"},"path":"workflow/unit/io/api"},{"data":{"collection":"features","draft":false,"type":"db_collection"},"path":"workflow/unit/io/db_collection"},{"data":{"ids":["KuAsBRwofzGfHPWiT"],"type":"db_ids"},"path":"workflow/unit/io/db_ids"},{"data":{"basename":"index.html","overwrite":true,"objectData":{"CONTAINER":"production-20160630-cluster-001","NAME":"/cluster-001-home/jrd101/data/jrd101-default/kernel-train-Cxmkj97aXKZeaRZov/Cxmkj97aXKZeaRZov.json","PROVIDER":"aws","REGION":"us-east-1","SIZE":6582,"TIMESTAMP":"1614217411"},"filetype":"text/html","type":"object_storage"},"path":"workflow/unit/io/object_storage"},{"data":{"flowchartId":"io","head":true,"input":[{"basename":"index.html","overwrite":true,"objectData":{"CONTAINER":"production-20160630-cluster-001","NAME":"/cluster-001-home/jrd101/data/jrd101-default/kernel-train-Cxmkj97aXKZeaRZov/Cxmkj97aXKZeaRZov.json","PROVIDER":"aws","REGION":"us-east-1","SIZE":6582,"TIMESTAMP":"1614217411"},"filetype":"text/html","type":"object_storage"},{"type":"api","endpoint":"data-frame","endpoint_options":{"data":{"features":["elemental_ratio:Si","elemental_ratio:Ge","ionization_potential:Ge","ionization_potential:Si"],"ids":["KuAsBRwofzGfHPWiT"],"targets":["band_gaps:indirect","band_gaps:direct"]},"headers":{"X-Auth-Token":"","X-User-Id":""},"method":"POST","params":{"query":{"formula":"SiGe"}}},"name":"DATA"}],"name":"io","source":"api","status":"idle","subtype":"input","type":"io","preProcessors":[],"postProcessors":[],"monitors":[],"results":[]},"path":"workflow/unit/io"},{"data":{"flowchartId":"map","head":true,"input":{"target":"MAP_K_POINTS_1","values":["2 2 2 0 0 0","3 3 3 0 0 0","4 4 4 0 0 0"]},"name":"map","status":"idle","type":"map","workflowId":"zxjhEiaQvwWwvB3oM","preProcessors":[],"postProcessors":[],"monitors":[],"results":[]},"path":"workflow/unit/map"},{"data":{"flowchartId":"reduce","head":true,"input":[{"arguments":["band_gaps"],"operation":"aggregate"}],"mapFlowchartId":"1","name":"reduce","status":"idle","type":"reduce","preProcessors":[],"postProcessors":[],"monitors":[],"results":[]},"path":"workflow/unit/reduce"},{"data":{"monitors":[{"name":"standard_output"}],"postProcessors":[],"preProcessors":[],"results":[{"name":"atomic_forces"}]},"path":"workflow/unit/runtime/runtime_items"},{"data":{"_id":"FPjAaKfuYAL7tiHbm","createdAt":"2018-11-19 06:41:46.877Z","creator":{"_id":"HtxACY2wX4b2hS8Rv","cls":"User","slug":"exadmin"},"exabyteId":"qKtTzu9utCo6ac4n7","hash":"f4fd707d2e47c15f8d786cf159040954","isDefault":true,"name":"workflow","owner":{"_id":"HtxACY2wX4b2hS8Rv","cls":"Account","slug":"exabyte"},"properties":["band_structure"],"schemaVersion":"0.2.0","slug":"workflow","subworkflows":[{"_id":"LCthJ6E2QabYCZqf4","application":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","build":"GNU","version":"6.3","hasAdvancedComputeOptions":true,"isUsingMaterial":true},"model":{"method":{"data":{"pseudo":[]},"subtype":"us","type":"pseudopotential"},"subtype":"gga","type":"dft","functional":"pbe"},"name":"Band Structure","properties":["band_structure"],"units":[{"application":{"name":"espresso","shortName":"qe","summary":"Quantum Espresso","build":"GNU","version":"6.3","hasAdvancedComputeOptions":true,"isUsingMaterial":true},"compute":null,"executable":{"name":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","advancedComputeOptions":true,"isDefault":true,"monitors":[{"name":"standard_output"}],"postProcessors":[],"preProcessors":[],"results":[{"name":"atomic_forces"}]},"flavor":{"name":"pw_scf","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","input":[{"name":"in.scf","templateId":"dJ7HYz5pQ4AuN5qc9"}],"postProcessors":[],"preProcessors":[],"monitors":[],"results":[]},"flowchartId":"execution","head":true,"input":[{"template":{"name":"kpoints_grid","executableName":"pw.x","applicationName":"pw.x","applicationVersion":"7.0","content":"K_POINTS automatic\n{{nkx}} {{nky}} {{nkz}} 0 0 0","contextProviders":[{"name":"KGridManagerMixin"}]},"rendered":"K_POINTS automatic\n2 2 2 0 0 0","isManuallyChanged":false}],"monitors":[{"name":"scf_accuracy"},{"name":"standard_output"}],"name":"execution","next":"pw-bands","postProcessors":[],"preProcessors":[],"results":[{"name":"harris_foulkes_estimate"}],"status":"idle","type":"execution","context":[]}]}],"workflows":[],"tags":["workflow"],"units":[{"_id":"LCthJ6E2QabYCZqf4","flowchartId":"05c362dc27ff1bb98d16fd60","type":"subworkflow","name":"subworkflow unit","preProcessors":[],"postProcessors":[],"monitors":[],"results":[]}]},"path":"workflow"}]''') \ No newline at end of file diff --git a/src/py/mat3ra/esse/data/properties.py b/src/py/mat3ra/esse/data/properties.py index dbc091191..f790ff6c1 100644 --- a/src/py/mat3ra/esse/data/properties.py +++ b/src/py/mat3ra/esse/data/properties.py @@ -1,3 +1,3 @@ import json -PROPERTIES_MANIFEST = json.loads(r'''{"convergence_ionic":{"defaults":{"units":"eV"},"schemaId":"properties-directory/workflow/convergence/ionic","isMonitor":true},"convergence_electronic":{"defaults":{"units":"eV"},"schemaId":"properties-directory/workflow/convergence/electronic","isMonitor":true},"pressure":{"defaults":{"units":"kbar"},"schemaId":"properties-directory/scalar/pressure","isResult":true},"total_energy":{"defaults":{"units":"eV"},"schemaId":"properties-directory/scalar/total-energy","isResult":true},"surface_energy":{"defaults":{"units":"eV/A^2"},"schemaId":"properties-directory/scalar/surface-energy","isResult":true},"interfacial_energy":{"defaults":{"units":"eV/A^2"},"schemaId":"properties-directory/scalar/interfacial-energy","isResult":true},"fermi_energy":{"defaults":{"units":"eV"},"schemaId":"properties-directory/scalar/fermi-energy","isResult":true},"homo_energy":{"defaults":{"units":"eV"},"schemaId":"properties-directory/scalar/homo-energy","isResult":true},"lumo_energy":{"defaults":{"units":"eV"},"schemaId":"properties-directory/scalar/lumo-energy","isResult":true},"formation_energy":{"defaults":{"units":"eV/atom"},"schemaId":"properties-directory/scalar/formation-energy","isResult":true},"defect_formation_energy":{"defaults":{"units":"eV"},"schemaId":"properties-directory/scalar/defect-formation-energy","isResult":true},"total_force":{"defaults":{"units":"eV/angstrom"},"schemaId":"properties-directory/scalar/total-force","isResult":true},"zero_point_energy":{"defaults":{"units":"eV"},"schemaId":"properties-directory/scalar/zero-point-energy","isResult":true},"thermal_correction_to_energy":{"defaults":{"units":"kcal/mol"},"schemaId":"properties-directory/scalar/thermal-correction-to-energy","isResult":true},"thermal_correction_to_enthalpy":{"defaults":{"units":"kcal/mol"},"schemaId":"properties-directory/scalar/thermal-correction-to-enthalpy","isResult":true},"reaction_energy_barrier":{"defaults":{"units":"eV"},"schemaId":"properties-directory/scalar/reaction-energy-barrier","isResult":true},"electron_affinity":{"defaults":{"units":"eV"},"schemaId":"properties-directory/scalar/electron-affinity","isResult":true},"ionization_potential":{"defaults":{"units":"eV"},"schemaId":"properties-directory/scalar/ionization-potential","isResult":true},"valence_band_offset":{"defaults":{"units":"eV"},"schemaId":"properties-directory/scalar/valence-band-offset"},"phonon_dos":{"defaults":{"xAxis":{"label":"frequency","units":"cm-1"},"yAxis":{"label":"Phonon DOS","units":"states/cm-1"}},"schemaId":"properties-directory/non-scalar/phonon-dos","isResult":true},"phonon_dispersions":{"defaults":{"xAxis":{"label":"qpoints","units":"crystal"},"yAxis":{"label":"frequency","units":"cm-1"}},"schemaId":"properties-directory/non-scalar/phonon-dispersions","isResult":true},"total_energy_contributions":{"defaults":{"units":"eV"},"schemaId":"properties-directory/non-scalar/total-energy-contributions","isResult":true},"formation_energy_contributions":{"defaults":null,"schemaId":"properties-directory/non-scalar/formation-energy-contributions","isResult":true},"band_gaps":{"types":["direct","indirect"],"defaults":{"units":"eV"},"schemaId":"properties-directory/non-scalar/band-gaps","isResult":true},"stress_tensor":{"defaults":{"units":"kbar"},"schemaId":"properties-directory/non-scalar/stress-tensor","isResult":true},"band_structure":{"defaults":{"xAxis":{"label":"kpoints","units":"crystal"},"yAxis":{"label":"energy","units":"eV"}},"schemaId":"properties-directory/non-scalar/band-structure","isResult":true},"density_of_states":{"defaults":{"xAxis":{"label":"energy","units":"eV"},"yAxis":{"label":"density of states","units":"states/unitcell"}},"schemaId":"properties-directory/non-scalar/density-of-states","isResult":true},"reaction_energy_profile":{"defaults":{"xAxis":{"label":"reaction coordinate"},"yAxis":{"label":"energy","units":"eV"}},"schemaId":"properties-directory/non-scalar/reaction-energy-profile","isResult":true},"potential_profile":{"defaults":{"xAxis":{"label":"z coordinate"},"yAxis":{"label":"energy","units":"eV"}},"schemaId":"properties-directory/non-scalar/potential-profile","isResult":true},"wavefunction_amplitude":{"defaults":{"xAxis":{"label":"coordinate","units":"angstrom"},"yAxis":{"label":"amplitude"}},"schemaId":"properties-directory/non-scalar/wavefunction-amplitude","isResult":true},"charge_density_profile":{"defaults":{"xAxis":{"label":"z coordinate"},"yAxis":{"label":"charge density","units":"e/A"}},"schemaId":"properties-directory/non-scalar/charge-density-profile","isResult":true},"vibrational_spectrum":{"defaults":{"xAxis":{"label":"wavenumber","units":"cm-1"},"yAxis":{"label":"Absorption coefficient","units":"km/mol"}},"schemaId":"properties-directory/non-scalar/vibrational-spectrum","isResult":true},"file_content":{"schemaId":"properties-directory/non-scalar/file-content","isResult":true},"average_potential_profile":{"defaults":{"xAxis":{"label":"z coordinate","units":"angstrom"},"yAxis":{"label":"energy","units":"eV"}},"schemaId":"properties-directory/non-scalar/average-potential-profile","isResult":true},"dielectric_tensor":{"schemaId":"properties-directory/non-scalar/dielectric-tensor","isResult":true},"basis":{"defaults":{"units":"angstrom"},"schemaId":"properties-directory/structural/basis"},"lattice":{"defaults":{"units":"angstrom"},"schemaId":"properties-directory/structural/lattice"},"atomic_forces":{"defaults":{"units":"eV/angstrom"},"schemaId":"properties-directory/structural/atomic-forces","isResult":true},"atomic_constraints":{"schemaId":"properties-directory/structural/basis/atomic-constraints"},"p-norm":{"schemaId":"properties-directory/structural/p-norm"},"volume":{"defaults":{"units":"angstrom^3"},"schemaId":"properties-directory/structural/volume"},"symmetry":{"defaults":{"units":"angstrom"},"schemaId":"properties-directory/structural/symmetry"},"elemental_ratio":{"schemaId":"properties-directory/structural/elemental-ratio"},"density":{"defaults":{"units":"g/cm^3"},"schemaId":"properties-directory/structural/density"},"magnetic_moments":{"defaults":{"units":"uB"},"schemaId":"properties-directory/structural/magnetic-moments","isResult":true},"bonds":{"defaults":{"units":"angstrom"},"schemaId":"properties-directory/structural/basis/bonds"},"inchi":{"schemaId":"properties-directory/structural/inchi"},"inchi_key":{"schemaId":"properties-directory/structural/inchi-key"},"material":{"schemaId":"material"},"hubbard_u":{"defaults":{"units":"eV"},"schemaId":"properties-directory/non-scalar/hubbard-u","isResult":true},"hubbard_v":{"defaults":{"units":"eV"},"schemaId":"properties-directory/non-scalar/hubbard-v","isResult":true},"hubbard_v_nn":{"defaults":{"units":"eV"},"schemaId":"properties-directory/non-scalar/hubbard-v-nn","isResult":true}}''') -RESULTS = json.loads(r'''["pressure","total_energy","surface_energy","interfacial_energy","fermi_energy","homo_energy","lumo_energy","formation_energy","defect_formation_energy","total_force","zero_point_energy","thermal_correction_to_energy","thermal_correction_to_enthalpy","reaction_energy_barrier","electron_affinity","ionization_potential","phonon_dos","phonon_dispersions","total_energy_contributions","formation_energy_contributions","band_gaps","stress_tensor","band_structure","density_of_states","reaction_energy_profile","potential_profile","wavefunction_amplitude","charge_density_profile","vibrational_spectrum","file_content","average_potential_profile","dielectric_tensor","atomic_forces","magnetic_moments","hubbard_u","hubbard_v","hubbard_v_nn"]''') \ No newline at end of file +PROPERTIES_MANIFEST = json.loads(r'''{"convergence_ionic":{"defaults":{"units":"eV"},"schemaId":"properties-directory/workflow/convergence/ionic","isMonitor":true},"convergence_electronic":{"defaults":{"units":"eV"},"schemaId":"properties-directory/workflow/convergence/electronic","isMonitor":true},"pressure":{"defaults":{"units":"kbar"},"schemaId":"properties-directory/scalar/pressure","isResult":true},"total_energy":{"defaults":{"units":"eV"},"schemaId":"properties-directory/scalar/total-energy","isResult":true},"surface_energy":{"defaults":{"units":"eV/A^2"},"schemaId":"properties-directory/scalar/surface-energy","isResult":true},"interfacial_energy":{"defaults":{"units":"eV/A^2"},"schemaId":"properties-directory/scalar/interfacial-energy","isResult":true},"fermi_energy":{"defaults":{"units":"eV"},"schemaId":"properties-directory/scalar/fermi-energy","isResult":true},"homo_energy":{"defaults":{"units":"eV"},"schemaId":"properties-directory/scalar/homo-energy","isResult":true},"lumo_energy":{"defaults":{"units":"eV"},"schemaId":"properties-directory/scalar/lumo-energy","isResult":true},"formation_energy":{"defaults":{"units":"eV/atom"},"schemaId":"properties-directory/scalar/formation-energy","isResult":true},"defect_formation_energy":{"defaults":{"units":"eV"},"schemaId":"properties-directory/scalar/defect-formation-energy","isResult":true},"total_force":{"defaults":{"units":"eV/angstrom"},"schemaId":"properties-directory/scalar/total-force","isResult":true},"zero_point_energy":{"defaults":{"units":"eV"},"schemaId":"properties-directory/scalar/zero-point-energy","isResult":true},"thermal_correction_to_energy":{"defaults":{"units":"kcal/mol"},"schemaId":"properties-directory/scalar/thermal-correction-to-energy","isResult":true},"thermal_correction_to_enthalpy":{"defaults":{"units":"kcal/mol"},"schemaId":"properties-directory/scalar/thermal-correction-to-enthalpy","isResult":true},"reaction_energy_barrier":{"defaults":{"units":"eV"},"schemaId":"properties-directory/scalar/reaction-energy-barrier","isResult":true},"electron_affinity":{"defaults":{"units":"eV"},"schemaId":"properties-directory/scalar/electron-affinity","isResult":true},"ionization_potential":{"defaults":{"units":"eV"},"schemaId":"properties-directory/scalar/ionization-potential","isResult":true},"valence_band_offset":{"defaults":{"units":"eV"},"schemaId":"properties-directory/scalar/valence-band-offset"},"phonon_dos":{"defaults":{"xAxis":{"label":"frequency","units":"cm-1"},"yAxis":{"label":"Phonon DOS","units":"states/cm-1"}},"schemaId":"properties-directory/non-scalar/phonon-dos","isResult":true},"phonon_dispersions":{"defaults":{"xAxis":{"label":"qpoints","units":"crystal"},"yAxis":{"label":"frequency","units":"cm-1"}},"schemaId":"properties-directory/non-scalar/phonon-dispersions","isResult":true},"total_energy_contributions":{"defaults":{"units":"eV"},"schemaId":"properties-directory/non-scalar/total-energy-contributions","isResult":true},"formation_energy_contributions":{"defaults":null,"schemaId":"properties-directory/non-scalar/formation-energy-contributions","isResult":true},"band_gaps":{"types":["direct","indirect"],"defaults":{"units":"eV"},"schemaId":"properties-directory/non-scalar/band-gaps","isResult":true},"stress_tensor":{"defaults":{"units":"kbar"},"schemaId":"properties-directory/non-scalar/stress-tensor","isResult":true},"band_structure":{"defaults":{"xAxis":{"label":"kpoints","units":"crystal"},"yAxis":{"label":"energy","units":"eV"}},"schemaId":"properties-directory/non-scalar/band-structure","isResult":true},"density_of_states":{"defaults":{"xAxis":{"label":"energy","units":"eV"},"yAxis":{"label":"density of states","units":"states/unitcell"}},"schemaId":"properties-directory/non-scalar/density-of-states","isResult":true},"reaction_energy_profile":{"defaults":{"xAxis":{"label":"reaction coordinate"},"yAxis":{"label":"energy","units":"eV"}},"schemaId":"properties-directory/non-scalar/reaction-energy-profile","isResult":true},"potential_profile":{"defaults":{"xAxis":{"label":"z coordinate"},"yAxis":{"label":"energy","units":"eV"}},"schemaId":"properties-directory/non-scalar/potential-profile","isResult":true},"wavefunction_amplitude":{"defaults":{"xAxis":{"label":"coordinate","units":"angstrom"},"yAxis":{"label":"amplitude"}},"schemaId":"properties-directory/non-scalar/wavefunction-amplitude","isResult":true},"charge_density_profile":{"defaults":{"xAxis":{"label":"z coordinate"},"yAxis":{"label":"charge density","units":"e/A"}},"schemaId":"properties-directory/non-scalar/charge-density-profile","isResult":true},"vibrational_spectrum":{"defaults":{"xAxis":{"label":"wavenumber","units":"cm-1"},"yAxis":{"label":"Absorption coefficient","units":"km/mol"}},"schemaId":"properties-directory/non-scalar/vibrational-spectrum","isResult":true},"file_content":{"schemaId":"properties-directory/non-scalar/file-content","isResult":true},"average_potential_profile":{"defaults":{"xAxis":{"label":"z coordinate","units":"angstrom"},"yAxis":{"label":"energy","units":"eV"}},"schemaId":"properties-directory/non-scalar/average-potential-profile","isResult":true},"dielectric_tensor":{"schemaId":"properties-directory/non-scalar/dielectric-tensor","isResult":true},"hysteresis_loop":{"defaults":{"xAxis":{"label":"bias","units":"V"},"yAxis":{"label":"response","units":"m"}},"schemaId":"properties-directory/non-scalar/hysteresis-loop","isResult":true},"basis":{"defaults":{"units":"angstrom"},"schemaId":"properties-directory/structural/basis"},"lattice":{"defaults":{"units":"angstrom"},"schemaId":"properties-directory/structural/lattice"},"atomic_forces":{"defaults":{"units":"eV/angstrom"},"schemaId":"properties-directory/structural/atomic-forces","isResult":true},"atomic_constraints":{"schemaId":"properties-directory/structural/basis/atomic-constraints"},"p-norm":{"schemaId":"properties-directory/structural/p-norm"},"volume":{"defaults":{"units":"angstrom^3"},"schemaId":"properties-directory/structural/volume"},"symmetry":{"defaults":{"units":"angstrom"},"schemaId":"properties-directory/structural/symmetry"},"elemental_ratio":{"schemaId":"properties-directory/structural/elemental-ratio"},"density":{"defaults":{"units":"g/cm^3"},"schemaId":"properties-directory/structural/density"},"magnetic_moments":{"defaults":{"units":"uB"},"schemaId":"properties-directory/structural/magnetic-moments","isResult":true},"bonds":{"defaults":{"units":"angstrom"},"schemaId":"properties-directory/structural/basis/bonds"},"inchi":{"schemaId":"properties-directory/structural/inchi"},"inchi_key":{"schemaId":"properties-directory/structural/inchi-key"},"material":{"schemaId":"material"},"hubbard_u":{"defaults":{"units":"eV"},"schemaId":"properties-directory/non-scalar/hubbard-u","isResult":true},"hubbard_v":{"defaults":{"units":"eV"},"schemaId":"properties-directory/non-scalar/hubbard-v","isResult":true},"hubbard_v_nn":{"defaults":{"units":"eV"},"schemaId":"properties-directory/non-scalar/hubbard-v-nn","isResult":true}}''') +RESULTS = json.loads(r'''["pressure","total_energy","surface_energy","interfacial_energy","fermi_energy","homo_energy","lumo_energy","formation_energy","defect_formation_energy","total_force","zero_point_energy","thermal_correction_to_energy","thermal_correction_to_enthalpy","reaction_energy_barrier","electron_affinity","ionization_potential","phonon_dos","phonon_dispersions","total_energy_contributions","formation_energy_contributions","band_gaps","stress_tensor","band_structure","density_of_states","reaction_energy_profile","potential_profile","wavefunction_amplitude","charge_density_profile","vibrational_spectrum","file_content","average_potential_profile","dielectric_tensor","hysteresis_loop","atomic_forces","magnetic_moments","hubbard_u","hubbard_v","hubbard_v_nn"]''') \ No newline at end of file diff --git a/src/py/mat3ra/esse/data/schemas.py b/src/py/mat3ra/esse/data/schemas.py index e54d31e2c..c9e3dad67 100644 --- a/src/py/mat3ra/esse/data/schemas.py +++ b/src/py/mat3ra/esse/data/schemas.py @@ -1,2 +1,2 @@ import json -SCHEMAS = json.loads(r'''[{"$id":"apse/db/materials-project/2025.9.25/summary","$schema":"http://json-schema.org/draft-07/schema#","title":"Materials Project Schema","description":"JSON schema for Materials Project API summary endpoint response","type":"object","properties":{"builder_meta":{"type":"object","properties":{"emmet_version":{"type":"string","description":"Version of emmet library used"},"pymatgen_version":{"type":"string","description":"Version of pymatgen library used"},"run_id":{"type":"string","description":"Unique identifier for the calculation run"},"batch_id":{"type":["string","null"],"description":"Batch identifier for grouped calculations"},"database_version":{"type":"string","description":"Version of the Materials Project database"},"build_date":{"type":"string","format":"date-time","description":"Date when the calculation was performed"},"license":{"type":"string","description":"License information for the data"}},"required":["emmet_version","pymatgen_version","run_id","database_version","build_date","license"]},"nsites":{"type":"integer","description":"Number of sites in the structure"},"elements":{"type":"array","items":{"type":"string"},"description":"List of chemical elements in the material"},"nelements":{"type":"integer","description":"Number of unique elements"},"composition":{"type":"object","additionalProperties":{"type":"number"},"description":"Chemical composition as element: count mapping"},"composition_reduced":{"type":"object","additionalProperties":{"type":"number"},"description":"Reduced chemical composition"},"formula_pretty":{"type":"string","description":"Human-readable chemical formula"},"formula_anonymous":{"type":"string","description":"Anonymous chemical formula"},"chemsys":{"type":"string","description":"Chemical system identifier"},"volume":{"type":"number","description":"Unit cell volume in cubic Angstroms"},"density":{"type":"number","description":"Material density in g/cm³"},"density_atomic":{"type":"number","description":"Atomic density"},"symmetry":{"type":"object","properties":{"crystal_system":{"type":"string","description":"Crystal system classification"},"symbol":{"type":"string","description":"Space group symbol"},"hall":{"type":["string","null"],"description":"Hall symbol"},"number":{"type":"integer","description":"Space group number"},"point_group":{"type":"string","description":"Point group symbol"},"symprec":{"type":"number","description":"Symmetry precision tolerance"},"angle_tolerance":{"type":"number","description":"Angle tolerance for symmetry analysis"},"version":{"type":"string","description":"Version of symmetry analysis software"}},"required":["crystal_system","symbol","number","point_group","symprec","angle_tolerance","version"]},"material_id":{"type":"string","description":"Unique Materials Project identifier"},"deprecated":{"type":"boolean","description":"Whether this material entry is deprecated"},"deprecation_reasons":{"type":["array","null"],"items":{"type":"string"},"description":"Reasons for deprecation if applicable"},"last_updated":{"type":"string","format":"date-time","description":"Last update timestamp"},"origins":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Origin name (e.g., structure, energy, magnetism)"},"task_id":{"type":"string","description":"Task identifier for this origin"},"last_updated":{"type":"string","format":"date-time","description":"Last update for this origin"}},"required":["name","task_id","last_updated"]}},"warnings":{"type":"array","items":{"type":"string"},"description":"Warning messages"},"structure":{"type":"object","properties":{"@module":{"type":"string","description":"Python module name"},"@class":{"type":"string","description":"Python class name"},"charge":{"type":"number","description":"Total charge of the structure"},"lattice":{"type":"object","properties":{"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3,"description":"Lattice matrix"},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3,"description":"Periodic boundary conditions"},"a":{"type":"number","description":"Lattice parameter a"},"b":{"type":"number","description":"Lattice parameter b"},"c":{"type":"number","description":"Lattice parameter c"},"alpha":{"type":"number","description":"Lattice angle alpha"},"beta":{"type":"number","description":"Lattice angle beta"},"gamma":{"type":"number","description":"Lattice angle gamma"},"volume":{"type":"number","description":"Unit cell volume"}},"required":["matrix","pbc","a","b","c","alpha","beta","gamma","volume"]},"properties":{"type":"object","description":"Additional structure properties"},"sites":{"type":"array","items":{"type":"object","properties":{"species":{"type":"array","items":{"type":"object","properties":{"element":{"type":"string","description":"Chemical element"},"occu":{"type":"number","description":"Occupancy"}},"required":["element","occu"]}},"abc":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3,"description":"Fractional coordinates"},"properties":{"type":"object","properties":{"magmom":{"type":"number","description":"Magnetic moment"}}},"label":{"type":"string","description":"Site label"},"xyz":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3,"description":"Cartesian coordinates"}},"required":["species","abc","label","xyz"]}}},"required":["@module","@class","charge","lattice","properties","sites"]},"property_name":{"type":"string","description":"Name of the property endpoint"},"task_ids":{"type":"array","items":{"type":"string"},"description":"List of task identifiers"},"uncorrected_energy_per_atom":{"type":"number","description":"Uncorrected energy per atom in eV"},"energy_per_atom":{"type":"number","description":"Energy per atom in eV"},"formation_energy_per_atom":{"type":"number","description":"Formation energy per atom in eV"},"energy_above_hull":{"type":"number","description":"Energy above convex hull in eV"},"is_stable":{"type":"boolean","description":"Whether the material is thermodynamically stable"},"equilibrium_reaction_energy_per_atom":{"type":["number","null"],"description":"Equilibrium reaction energy per atom in eV"},"decomposes_to":{"oneOf":[{"type":"array","items":{"type":"object","properties":{"material_id":{"type":"string","description":"Material ID of decomposition product"},"formula":{"type":"string","description":"Formula of decomposition product"},"amount":{"type":"number","description":"Amount of decomposition product"}},"required":["material_id","formula","amount"]}},{"type":"null"}]},"xas":{"oneOf":[{"type":"array","items":{"type":"object","properties":{"edge":{"type":"string","description":"XAS edge type (K, L, M, etc.)"},"absorbing_element":{"type":"string","description":"Element for XAS absorption"},"spectrum_type":{"type":"string","description":"Type of XAS spectrum (XANES, EXAFS, XAFS)"}},"required":["edge","absorbing_element","spectrum_type"]}},{"type":"null"}]},"grain_boundaries":{"type":["object","null"],"description":"Grain boundary information"},"band_gap":{"type":"number","description":"Band gap in eV"},"cbm":{"type":["number","null"],"description":"Conduction band minimum in eV"},"vbm":{"type":["number","null"],"description":"Valence band maximum in eV"},"efermi":{"type":["number","null"],"description":"Fermi energy in eV"},"is_gap_direct":{"type":"boolean","description":"Whether the band gap is direct"},"is_metal":{"type":"boolean","description":"Whether the material is metallic"},"es_source_calc_id":{"type":["string","null"],"description":"Source calculation ID for electronic structure"},"bandstructure":{"oneOf":[{"type":"object","properties":{"setyawan_curtarolo":{"oneOf":[{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"oneOf":[{"type":"object","properties":{"band_index":{"type":"object","additionalProperties":{"type":"array","items":{"type":"number"}}},"kpoint_index":{"type":"array","items":{"type":"number"}},"kpoint":{"type":"object","properties":{"lattice":{"type":"object","properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}},"required":["@module","@class","matrix","pbc"]},"fcoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"ccoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}},"required":["lattice","fcoords","ccoords","label","@module","@class"]},"energy":{"type":"number"},"projections":{"type":"object","additionalProperties":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}},"required":["band_index","kpoint_index","kpoint","energy","projections"]},{"type":"null"}]},"vbm":{"oneOf":[{"type":"object","properties":{"band_index":{"type":"object","additionalProperties":{"type":"array","items":{"type":"number"}}},"kpoint_index":{"type":"array","items":{"type":"number"}},"kpoint":{"type":"object","properties":{"lattice":{"type":"object","properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}},"required":["@module","@class","matrix","pbc"]},"fcoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"ccoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}},"required":["lattice","fcoords","ccoords","label","@module","@class"]},"energy":{"type":"number"},"projections":{"type":"object","additionalProperties":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}},"required":["band_index","kpoint_index","kpoint","energy","projections"]},{"type":"null"}]},"efermi":{"type":["number","null"]},"is_gap_direct":{"type":"boolean"},"is_metal":{"type":"boolean"},"magnetic_ordering":{"type":"string"},"equivalent_labels":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"string"}}}},"nbands":{"type":"number"},"direct_gap":{"type":"number"}},"required":["task_id","band_gap","cbm","vbm","efermi","is_gap_direct","is_metal","magnetic_ordering","equivalent_labels","nbands","direct_gap"]},{"type":"null"}]},"hinuma":{"oneOf":[{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"oneOf":[{"type":"object","properties":{"band_index":{"type":"object","additionalProperties":{"type":"array","items":{"type":"number"}}},"kpoint_index":{"type":"array","items":{"type":"number"}},"kpoint":{"type":"object","properties":{"lattice":{"type":"object","properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}},"required":["@module","@class","matrix","pbc"]},"fcoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"ccoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}},"required":["lattice","fcoords","ccoords","label","@module","@class"]},"energy":{"type":"number"},"projections":{"type":"object","additionalProperties":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}},"required":["band_index","kpoint_index","kpoint","energy","projections"]},{"type":"null"}]},"vbm":{"oneOf":[{"type":"object","properties":{"band_index":{"type":"object","additionalProperties":{"type":"array","items":{"type":"number"}}},"kpoint_index":{"type":"array","items":{"type":"number"}},"kpoint":{"type":"object","properties":{"lattice":{"type":"object","properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}},"required":["@module","@class","matrix","pbc"]},"fcoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"ccoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}},"required":["lattice","fcoords","ccoords","label","@module","@class"]},"energy":{"type":"number"},"projections":{"type":"object","additionalProperties":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}},"required":["band_index","kpoint_index","kpoint","energy","projections"]},{"type":"null"}]},"efermi":{"type":["number","null"]},"is_gap_direct":{"type":"boolean"},"is_metal":{"type":"boolean"},"magnetic_ordering":{"type":"string"},"equivalent_labels":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"string"}}}},"nbands":{"type":"number"},"direct_gap":{"type":"number"}},"required":["task_id","band_gap","cbm","vbm","efermi","is_gap_direct","is_metal","magnetic_ordering","equivalent_labels","nbands","direct_gap"]},{"type":"null"}]},"latimer_munro":{"oneOf":[{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"oneOf":[{"type":"object","properties":{"band_index":{"type":"object","additionalProperties":{"type":"array","items":{"type":"number"}}},"kpoint_index":{"type":"array","items":{"type":"number"}},"kpoint":{"type":"object","properties":{"lattice":{"type":"object","properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}},"required":["@module","@class","matrix","pbc"]},"fcoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"ccoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}},"required":["lattice","fcoords","ccoords","label","@module","@class"]},"energy":{"type":"number"},"projections":{"type":"object","additionalProperties":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}},"required":["band_index","kpoint_index","kpoint","energy","projections"]},{"type":"null"}]},"vbm":{"oneOf":[{"type":"object","properties":{"band_index":{"type":"object","additionalProperties":{"type":"array","items":{"type":"number"}}},"kpoint_index":{"type":"array","items":{"type":"number"}},"kpoint":{"type":"object","properties":{"lattice":{"type":"object","properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}},"required":["@module","@class","matrix","pbc"]},"fcoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"ccoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}},"required":["lattice","fcoords","ccoords","label","@module","@class"]},"energy":{"type":"number"},"projections":{"type":"object","additionalProperties":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}},"required":["band_index","kpoint_index","kpoint","energy","projections"]},{"type":"null"}]},"efermi":{"type":["number","null"]},"is_gap_direct":{"type":"boolean"},"is_metal":{"type":"boolean"},"magnetic_ordering":{"type":"string"},"equivalent_labels":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"string"}}}},"nbands":{"type":"number"},"direct_gap":{"type":"number"}},"required":["task_id","band_gap","cbm","vbm","efermi","is_gap_direct","is_metal","magnetic_ordering","equivalent_labels","nbands","direct_gap"]},{"type":"null"}]}}},{"type":"null"}]},"dos":{"oneOf":[{"type":"object","properties":{"total":{"type":"object","additionalProperties":{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"type":["number","null"]},"vbm":{"type":["number","null"]},"efermi":{"type":"number"},"spin_polarization":{"type":["number","null"]}},"required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"]}},"elemental":{"type":"object","additionalProperties":{"type":"object","properties":{"total":{"type":"object","additionalProperties":{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"type":["number","null"]},"vbm":{"type":["number","null"]},"efermi":{"type":"number"},"spin_polarization":{"type":["number","null"]}},"required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"]}},"s":{"type":"object","additionalProperties":{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"type":["number","null"]},"vbm":{"type":["number","null"]},"efermi":{"type":"number"},"spin_polarization":{"type":["number","null"]}},"required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"]}},"p":{"type":"object","additionalProperties":{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"type":["number","null"]},"vbm":{"type":["number","null"]},"efermi":{"type":"number"},"spin_polarization":{"type":["number","null"]}},"required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"]}},"d":{"type":"object","additionalProperties":{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"type":["number","null"]},"vbm":{"type":["number","null"]},"efermi":{"type":"number"},"spin_polarization":{"type":["number","null"]}},"required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"]}}}}},"orbital":{"type":"object","properties":{"s":{"type":"object","additionalProperties":{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"type":["number","null"]},"vbm":{"type":["number","null"]},"efermi":{"type":"number"},"spin_polarization":{"type":["number","null"]}},"required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"]}},"p":{"type":"object","additionalProperties":{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"type":["number","null"]},"vbm":{"type":["number","null"]},"efermi":{"type":"number"},"spin_polarization":{"type":["number","null"]}},"required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"]}},"d":{"type":"object","additionalProperties":{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"type":["number","null"]},"vbm":{"type":["number","null"]},"efermi":{"type":"number"},"spin_polarization":{"type":["number","null"]}},"required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"]}}}},"magnetic_ordering":{"type":"string","description":"Magnetic ordering type"}}},{"type":"null"}]},"dos_energy_up":{"type":["object","null"],"description":"Density of states for spin up"},"dos_energy_down":{"type":["object","null"],"description":"Density of states for spin down"},"is_magnetic":{"type":"boolean","description":"Whether the material is magnetic"},"ordering":{"type":"string","description":"Magnetic ordering"},"total_magnetization":{"type":"number","description":"Total magnetization"},"total_magnetization_normalized_vol":{"type":"number","description":"Volume-normalized magnetization"},"total_magnetization_normalized_formula_units":{"type":"number","description":"Formula unit normalized magnetization"},"num_magnetic_sites":{"type":"number","description":"Number of magnetic sites"},"num_unique_magnetic_sites":{"type":"number","description":"Number of unique magnetic sites"},"types_of_magnetic_species":{"type":"array","items":{"type":"string"},"description":"Types of magnetic species"},"bulk_modulus":{"oneOf":[{"type":"object","properties":{"voigt":{"type":"number","description":"Voigt bulk modulus in GPa"},"reuss":{"type":"number","description":"Reuss bulk modulus in GPa"},"vrh":{"type":"number","description":"Voigt-Reuss-Hill bulk modulus in GPa"}},"required":["voigt","reuss","vrh"]},{"type":"null"}]},"shear_modulus":{"oneOf":[{"type":"object","properties":{"voigt":{"type":"number","description":"Voigt shear modulus in GPa"},"reuss":{"type":"number","description":"Reuss shear modulus in GPa"},"vrh":{"type":"number","description":"Voigt-Reuss-Hill shear modulus in GPa"}},"required":["voigt","reuss","vrh"]},{"type":"null"}]},"universal_anisotropy":{"oneOf":[{"type":"number"},{"type":"null"}],"description":"Universal anisotropy index"},"homogeneous_poisson":{"oneOf":[{"type":"number"},{"type":"null"}],"description":"Homogeneous Poisson ratio"},"e_total":{"type":["number","null"],"description":"Total energy"},"e_ionic":{"type":["number","null"],"description":"Ionic energy"},"e_electronic":{"type":["number","null"],"description":"Electronic energy"},"n":{"type":["number","null"],"description":"Refractive index"},"e_ij_max":{"type":["number","null"],"description":"Maximum elastic constant"},"weighted_surface_energy_EV_PER_ANG2":{"type":["number","null"],"description":"Weighted surface energy in eV/Ų"},"weighted_surface_energy":{"type":["number","null"],"description":"Weighted surface energy"},"weighted_work_function":{"type":["number","null"],"description":"Weighted work function"},"surface_anisotropy":{"type":["number","null"],"description":"Surface anisotropy"},"shape_factor":{"type":["number","null"],"description":"Shape factor"},"has_reconstructed":{"type":["boolean","null"],"description":"Whether surface has reconstruction"},"possible_species":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"Possible ionic species"},"has_props":{"type":"object","properties":{"materials":{"type":"boolean"},"thermo":{"type":"boolean"},"xas":{"type":"boolean"},"grain_boundaries":{"type":"boolean"},"chemenv":{"type":"boolean"},"electronic_structure":{"type":"boolean"},"absorption":{"type":"boolean"},"bandstructure":{"type":"boolean"},"dos":{"type":"boolean"},"magnetism":{"type":"boolean"},"elasticity":{"type":"boolean"},"dielectric":{"type":"boolean"},"piezoelectric":{"type":"boolean"},"surface_properties":{"type":"boolean"},"oxi_states":{"type":"boolean"},"provenance":{"type":"boolean"},"charge_density":{"type":"boolean"},"eos":{"type":"boolean"},"phonon":{"type":"boolean"},"insertion_electrodes":{"type":"boolean"},"substrates":{"type":"boolean"}},"required":["materials","thermo","xas","grain_boundaries","chemenv","electronic_structure","absorption","bandstructure","dos","magnetism","elasticity","dielectric","piezoelectric","surface_properties","oxi_states","provenance","charge_density","eos","phonon","insertion_electrodes","substrates"]},"theoretical":{"type":"boolean","description":"Whether this is a theoretical material"},"database_IDs":{"type":"object","properties":{"icsd":{"type":"array","items":{"type":"string"},"description":"ICSD database identifiers"}}}},"required":["builder_meta","nsites","elements","nelements","composition","composition_reduced","formula_pretty","formula_anonymous","chemsys","volume","density","density_atomic","symmetry","material_id","deprecated","last_updated","origins","warnings","structure","property_name","task_ids","uncorrected_energy_per_atom","energy_per_atom","formation_energy_per_atom","energy_above_hull","is_stable","decomposes_to","xas","band_gap","cbm","vbm","efermi","is_gap_direct","is_metal","bandstructure","dos","is_magnetic","ordering","total_magnetization","total_magnetization_normalized_vol","total_magnetization_normalized_formula_units","num_magnetic_sites","num_unique_magnetic_sites","types_of_magnetic_species","bulk_modulus","shear_modulus","universal_anisotropy","homogeneous_poisson","possible_species","has_props","theoretical","database_IDs"],"definitions":{"bandstructure_data":{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"oneOf":[{"type":"object","properties":{"band_index":{"type":"object","additionalProperties":{"type":"array","items":{"type":"number"}}},"kpoint_index":{"type":"array","items":{"type":"number"}},"kpoint":{"type":"object","properties":{"lattice":{"type":"object","properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}},"required":["@module","@class","matrix","pbc"]},"fcoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"ccoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}},"required":["lattice","fcoords","ccoords","label","@module","@class"]},"energy":{"type":"number"},"projections":{"type":"object","additionalProperties":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}},"required":["band_index","kpoint_index","kpoint","energy","projections"]},{"type":"null"}]},"vbm":{"oneOf":[{"type":"object","properties":{"band_index":{"type":"object","additionalProperties":{"type":"array","items":{"type":"number"}}},"kpoint_index":{"type":"array","items":{"type":"number"}},"kpoint":{"type":"object","properties":{"lattice":{"type":"object","properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}},"required":["@module","@class","matrix","pbc"]},"fcoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"ccoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}},"required":["lattice","fcoords","ccoords","label","@module","@class"]},"energy":{"type":"number"},"projections":{"type":"object","additionalProperties":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}},"required":["band_index","kpoint_index","kpoint","energy","projections"]},{"type":"null"}]},"efermi":{"type":["number","null"]},"is_gap_direct":{"type":"boolean"},"is_metal":{"type":"boolean"},"magnetic_ordering":{"type":"string"},"equivalent_labels":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"string"}}}},"nbands":{"type":"number"},"direct_gap":{"type":"number"}},"required":["task_id","band_gap","cbm","vbm","efermi","is_gap_direct","is_metal","magnetic_ordering","equivalent_labels","nbands","direct_gap"]},"band_extrema":{"type":"object","properties":{"band_index":{"type":"object","additionalProperties":{"type":"array","items":{"type":"number"}}},"kpoint_index":{"type":"array","items":{"type":"number"}},"kpoint":{"type":"object","properties":{"lattice":{"type":"object","properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}},"required":["@module","@class","matrix","pbc"]},"fcoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"ccoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}},"required":["lattice","fcoords","ccoords","label","@module","@class"]},"energy":{"type":"number"},"projections":{"type":"object","additionalProperties":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}},"required":["band_index","kpoint_index","kpoint","energy","projections"]},"kpoint":{"type":"object","properties":{"lattice":{"type":"object","properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}},"required":["@module","@class","matrix","pbc"]},"fcoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"ccoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}},"required":["lattice","fcoords","ccoords","label","@module","@class"]},"dos_data":{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"type":["number","null"]},"vbm":{"type":["number","null"]},"efermi":{"type":"number"},"spin_polarization":{"type":["number","null"]}},"required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"]}}},{"$id":"apse/db/materials-project/legacy/material","$schema":"http://json-schema.org/draft-07/schema#","title":"Materials Project Legacy Material schema","description":"JSON schema for Materials Project API legacy material endpoint response","type":"object","properties":{"energy":{"type":"number","description":"Total energy"},"energy_per_atom":{"type":"number","description":"Energy per atom"},"volume":{"type":"number","description":"Unit cell volume"},"formation_energy_per_atom":{"type":"number","description":"Formation energy per atom"},"nsites":{"type":"integer","description":"Number of sites in unit cell"},"unit_cell_formula":{"type":"object","description":"Unit cell formula as element counts","additionalProperties":{"type":"number"}},"pretty_formula":{"type":"string","description":"Pretty formatted chemical formula"},"is_hubbard":{"type":"boolean","description":"Whether Hubbard U correction was applied"},"elements":{"type":"array","description":"List of elements in the material","items":{"type":"string"}},"nelements":{"type":"integer","description":"Number of distinct elements"},"e_above_hull":{"type":["number","null"],"description":"Energy above convex hull"},"hubbards":{"type":"object","description":"Hubbard U values","additionalProperties":true},"is_compatible":{"type":"boolean","description":"Whether material is compatible"},"spacegroup":{"type":"object","description":"Spacegroup information","properties":{"symprec":{"type":"number"},"source":{"type":"string"},"symbol":{"type":"string"},"number":{"type":"integer"},"point_group":{"type":"string"},"crystal_system":{"type":"string"},"hall":{"type":"string"}}},"task_ids":{"type":"array","description":"List of task IDs","items":{"type":"string"}},"band_gap":{"type":"number","description":"Band gap value"},"density":{"type":"number","description":"Material density"},"icsd_id":{"type":["integer","null"],"description":"ICSD ID (single)"},"icsd_ids":{"type":"array","description":"List of ICSD IDs","items":{"type":"integer"}},"cif":{"type":"string","description":"CIF file content"},"total_magnetization":{"type":"number","description":"Total magnetization"},"material_id":{"type":"string","description":"Material ID from Materials Project"},"oxide_type":{"type":"string","description":"Oxide type classification"},"tags":{"type":"array","description":"Material tags/names","items":{"type":"string"}},"elasticity":{"type":["object","null"],"description":"Elasticity data","properties":{"G_Reuss":{"type":"number","description":"Reuss shear modulus in GPa"},"G_VRH":{"type":"number","description":"Voigt-Reuss-Hill shear modulus in GPa"},"G_Voigt":{"type":"number","description":"Voigt shear modulus in GPa"},"G_Voigt_Reuss_Hill":{"type":"number","description":"Voigt-Reuss-Hill shear modulus in GPa (alternative field)"},"K_Reuss":{"type":"number","description":"Reuss bulk modulus in GPa"},"K_VRH":{"type":"number","description":"Voigt-Reuss-Hill bulk modulus in GPa"},"K_Voigt":{"type":"number","description":"Voigt bulk modulus in GPa"},"K_Voigt_Reuss_Hill":{"type":"number","description":"Voigt-Reuss-Hill bulk modulus in GPa (alternative field)"},"elastic_anisotropy":{"type":"number","description":"Elastic anisotropy"},"elastic_tensor":{"type":"array","description":"6x6 elastic tensor in GPa","items":{"type":"array","items":{"type":"number"}}},"homogeneous_poisson":{"type":"number","description":"Homogeneous Poisson ratio"},"poisson_ratio":{"type":"number","description":"Poisson ratio"},"universal_anisotropy":{"type":"number","description":"Universal elastic anisotropy"},"elastic_tensor_original":{"type":"array","description":"Original 6x6 elastic tensor in GPa","items":{"type":"array","items":{"type":"number"}}},"compliance_tensor":{"type":"array","description":"6x6 compliance tensor in GPa^-1","items":{"type":"array","items":{"type":"number"}}},"warnings":{"type":"array","description":"Warnings about elastic properties","items":{"type":"string"}},"nsites":{"type":"integer","description":"Number of sites in the structure"}}},"piezo":{"type":["object","null"],"description":"Piezoelectric data"},"diel":{"type":["object","null"],"description":"Dielectric data"},"deprecated":{"type":"boolean","description":"Whether material is deprecated"},"full_formula":{"type":"string","description":"Full chemical formula"}},"required":["material_id","energy","energy_per_atom","volume","formation_energy_per_atom","nsites","unit_cell_formula","pretty_formula","is_hubbard","elements","nelements","e_above_hull","hubbards","is_compatible","spacegroup","task_ids","band_gap","density","icsd_ids","cif","total_magnetization","oxide_type","tags","deprecated","full_formula"]},{"$id":"apse/db/nist-jarvis/2024.3.13/atoms","$schema":"http://json-schema.org/draft-07/schema#","title":"NIST JARVIS Atoms schema","description":"NIST J.A.R.V.I.S. db entry `atoms` key schema. Based on https://figshare.com/articles/dataset/Monolayer_data_for_heterostructure/22344571","additionalProperties":false,"type":"object","properties":{"lattice_mat":{"type":"array","description":"Crystal lattice vectors as a 3x3 matrix, in Angstroms","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"coords":{"type":"array","description":"Atomic coordinates for each atom in the unit cell","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":1},"elements":{"type":"array","description":"Atomic elements for each atom in the unit cell in the same order as `coords`","items":{"type":"string"},"minItems":1},"abc":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"angles":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"cartesian":{"type":"boolean","description":"True if the coordinates are in Cartesian space, false if in fractional space"},"props":{"type":"array","items":{"type":"string"},"description":"Additional properties for each of the atoms"}}},{"$id":"apse/db/nist-jarvis/2024.3.13/db-entry","$schema":"http://json-schema.org/draft-07/schema#","title":"NIST JARVIS db entry schema","description":"NIST J.A.R.V.I.S. db entry `atoms` key schema. Based on https://figshare.com/articles/dataset/Monolayer_data_for_heterostructure/22344571","additionalProperties":true,"type":"object","properties":{"atoms":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NIST JARVIS Atoms schema","description":"NIST J.A.R.V.I.S. db entry `atoms` key schema. Based on https://figshare.com/articles/dataset/Monolayer_data_for_heterostructure/22344571","additionalProperties":false,"type":"object","properties":{"lattice_mat":{"type":"array","description":"Crystal lattice vectors as a 3x3 matrix, in Angstroms","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"coords":{"type":"array","description":"Atomic coordinates for each atom in the unit cell","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":1},"elements":{"type":"array","description":"Atomic elements for each atom in the unit cell in the same order as `coords`","items":{"type":"string"},"minItems":1},"abc":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"angles":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"cartesian":{"type":"boolean","description":"True if the coordinates are in Cartesian space, false if in fractional space"},"props":{"type":"array","items":{"type":"string"},"description":"Additional properties for each of the atoms"}}},"jid":{"type":"string","description":"The id of the entry in the database, e.g. JVASP-677"}}},{"$id":"apse/db/third-party-sources","$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]},{"$id":"apse/file/applications/espresso/7.2/pw.x/atomic-positions","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic positions schema","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1493","type":"object","additionalProperties":false,"properties":{"card_option":{"type":"string","enum":["alat","bohr","angstrom","crystal","crystal_sg"],"default":"alat"},"values":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}}},{"$id":"apse/file/applications/espresso/7.2/pw.x/atomic-species","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic species schema","type":"object","additionalProperties":false,"properties":{"values":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}}}},{"$id":"apse/file/applications/espresso/7.2/pw.x/cell","$schema":"http://json-schema.org/draft-07/schema#","title":"cell schema","type":"object","additionalProperties":false,"oneOf":[{"type":"object","additionalProperties":false,"properties":{"cell_dynamics":{"type":"string","enum":["none","sd","damp-pr","damp-w","bfgs"],"default":"bfgs","description":"CASE ( calculation == 'vc-relax' )"}}},{"type":"object","additionalProperties":false,"properties":{"cell_dynamics":{"type":"string","enum":["none","pr","w"],"description":"CASE ( calculation == 'vc-md' )"}}}],"properties":{"press":{"type":"number","description":"Target pressure [KBar] in a variable-cell md or relaxation run.","default":0},"wmass":{"type":"number","description":"Fictitious cell mass [amu] for variable-cell simulations (both 'vc-md' and 'vc-relax'). Default: 0.75*Tot_Mass/pi**2 for Parrinello-Rahman MD; 0.75*Tot_Mass/pi**2/Omega**(2/3) for Wentzcovitch MD"},"cell_factor":{"type":"number","description":"Used in the construction of the pseudopotential tables. It should exceed the maximum linear contraction of the cell during a simulation. Default: 2.0 for variable-cell calculations, 1.0 otherwise"},"press_conv_thr":{"type":"number","default":0.5,"description":"Convergence threshold on the pressure for variable cell relaxation ('vc-relax' : note that the other convergence thresholds for ionic relaxation apply as well)."},"cell_dofree":{"type":"string","enum":["all","ibrav","a","b","c","fixa","fixb","fixc","x","y","xy","xz","xyz","shape","volume","2Dxy","2Dshape","epitaxial_ab","epitaxial_ac","epitaxial_bc"],"default":"all","description":"Select which of the cell parameters should be moved"}}},{"$id":"apse/file/applications/espresso/7.2/pw.x/cell-parameters","$schema":"http://json-schema.org/draft-07/schema#","title":"cell parameters schema","type":"object","additionalProperties":false,"properties":{"card_option":{"type":"string","enum":["alat","bohr","angstrom"],"description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"values":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"$id":"apse/file/applications/espresso/7.2/pw.x/control","$schema":"http://json-schema.org/draft-07/schema#","title":"control schema","type":"object","additionalProperties":false,"properties":{"calculation":{"description":"A string describing the task to be performed","type":"string","enum":["scf","nscf","bands","relax","md","vc-relax","vc-md"],"default":"scf"},"title":{"description":"reprinted on output.","type":"string","default":""},"verbosity":{"description":"Currently two verbosity levels are implemented: high, low. 'debug' and 'medium' have the same effect as 'high'; 'default' and 'minimal' as 'low'","type":"string","enum":["high","low","debug","medium","minimal","default"],"default":"low"},"restart_mode":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"wf_collect":{"type":"boolean","description":"OBSOLETE - NO LONGER IMPLEMENTED"},"nstep":{"description":"Default: 1 if calculation == 'scf', 'nscf', 'bands'; 50 for the other cases; Number of molecular-dynamics or structural optimization steps performed in this run. If set to 0, the code performs a quick \"dry run\", stopping just after initialization. This is useful to check for input correctness and to have the summary printed. NOTE: in MD calculations, the code will perform \"nstep\" steps even if restarting from a previously interrupted calculation.","type":"number","default":1},"iprint":{"description":"band energies are written every iprint iterations","type":"number"},"tstress":{"type":"boolean","default":false,"description":"calculate stress. It is set to .TRUE. automatically if calculation == 'vc-md' or 'vc-relax'"},"tprnfor":{"type":"boolean","description":"calculate forces. It is set to .TRUE. automatically if calculation == 'relax','md','vc-md'"},"dt":{"type":"number","description":"time step for molecular dynamics, in Rydberg atomic units (1 a.u.=4.8378 * 10^-17 s : beware, the CP code uses Hartree atomic units, half that much!!!)","default":20},"outdir":{"type":"string","description":"input, temporary, output files are found in this directory, see also wfcdir"},"wfcdir":{"type":"string","description":"This directory specifies where to store files generated by each processor (*.wfc{N}, *.igk{N}, etc.). Useful for machines without a parallel file system: set wfcdir to a local file system, while outdir should be a parallel or network file system, visible to all processors. Beware: in order to restart from interrupted runs, or to perform further calculations using the produced data files, you may need to copy files to outdir. Works only for pw.x."},"prefix":{"type":"string","description":"prepended to input/output filenames: prefix.wfc, prefix.rho, etc.","default":"pwscf"},"lkpoint_dir":{"type":"boolean","description":"OBSOLETE - NO LONGER IMPLEMENTED"},"max_seconds":{"type":"number","default":10000000,"description":"Jobs stops after max_seconds CPU time. Use this option in conjunction with option restart_mode if you need to split a job too long to complete into shorter jobs that fit into your batch queues."},"etot_conv_thr":{"type":"number","default":0.0001,"description":"Convergence threshold on total energy (a.u) for ionic minimization: the convergence criterion is satisfied when the total energy changes less than etot_conv_thr between two consecutive scf steps. Note that etot_conv_thr is extensive, like the total energy. See also forc_conv_thr - both criteria must be satisfied"},"forc_conv_thr":{"type":"number","default":0.001,"description":"Convergence threshold on forces (a.u) for ionic minimization: the convergence criterion is satisfied when all components of all forces are smaller than forc_conv_thr. See also etot_conv_thr - both criteria must be satisfied"},"disk_io":{"type":"string","enum":["high","medium","low","nowf","none"],"description":"Specifies the amount of disk I/O activity: (only for binary files and xml data file in data directory; other files printed at each molecular dynamics / structural optimization step are not controlled by this option )"},"pseudo_dir":{"type":"string","description":"directory containing pseudopotential files. Default: value of the $ESPRESSO_PSEUDO environment variable if set; '$HOME/espresso/pseudo/' otherwise"},"tefield":{"type":"boolean","default":false,"description":"If .TRUE. a saw-like potential simulating an electric field is added to the bare ionic potential. See variables edir, eamp, emaxpos, eopreg for the form and size of the added potential."},"dipfield":{"type":"boolean","default":false,"description":"If .TRUE. and tefield==.TRUE. a dipole correction is also added to the bare ionic potential - implements the recipe of L. Bengtsson, PRB 59, 12301 (1999). See variables edir, emaxpos, eopreg for the form of the correction. Must be used ONLY in a slab geometry, for surface calculations, with the discontinuity FALLING IN THE EMPTY SPACE."},"lelfield":{"type":"boolean","default":false,"description":"If .TRUE. a homogeneous finite electric field described through the modern theory of the polarization is applied. This is different from tefield == .true. !"},"nberrycyc":{"type":"integer","default":1,"description":"In the case of a finite electric field ( lelfield == .TRUE. ) it defines the number of iterations for converging the wavefunctions in the electric field Hamiltonian, for each external iteration on the charge density"},"lorbm":{"type":"boolean","default":false,"description":"If .TRUE. perform orbital magnetization calculation."},"lberry":{"type":"boolean","default":false,"description":"If .TRUE. perform a Berry phase calculation. See the header of PW/src/bp_c_phase.f90 for documentation"},"gdir":{"type":"number","description":"For Berry phase calculation: direction of the k-point strings in reciprocal space. Allowed values: 1, 2, 3 1=first, 2=second, 3=third reciprocal lattice vector For calculations with finite electric fields (lelfield==.true.) \"gdir\" is the direction of the field."},"nppstr":{"type":"number","description":"For Berry phase calculation: number of k-points to be calculated along each symmetry-reduced string. The same for calculation with finite electric fields (lelfield==.true.)."},"gate":{"type":"boolean","default":false,"description":"In the case of charged cells (tot_charge .ne. 0) setting gate = .TRUE. represents the counter charge (i.e. -tot_charge) not by a homogeneous background charge but with a charged plate, which is placed at zgate (see below). Details of the gate potential can be found in T. Brumme, M. Calandra, F. Mauri; PRB 89, 245406 (2014). Note, that in systems which are not symmetric with respect to the plate, one needs to enable the dipole correction! (dipfield=.true.). Currently, symmetry can be used with gate=.true. but carefully check that no symmetry is included which maps z to -z even if in principle one could still use them for symmetric systems (i.e. no dipole correction). For nosym=.false. verbosity is set to 'high'. Note: this option was called \"monopole\" in v6.0 and 6.1 of pw.x"},"twochem":{"type":"boolean","default":false,"description":"IF .TRUE. , a two chemical potential calculation for the simulation of photoexcited systems is performed, constraining a fraction of the electrons in the conduction manifold."},"lfcp":{"type":"boolean","default":false,"description":"If .TRUE. perform a constant bias potential (constant-mu) calculation for a system with ESM method. See the header of PW/src/fcp_module.f90 for documentation. To perform the calculation, you must set a namelist FCP."},"trism":{"type":"boolean","default":false,"description":"If .TRUE. perform a 3D-RISM-SCF calculation [for details see H.Sato et al., JCP 112, 9463 (2000), doi:10.1063/1.481564]. The solvent's distributions are calculated by 3D-RISM, though solute is treated as SCF. The charge density and the atomic positions are optimized, simultaneously with the solvents. To perform the calculation, you must set a namelist RISM and a card SOLVENTS. If assume_isolated = 'esm' and esm_bc = 'bc1', Laue-RISM is calculated instead of 3D-RISM and coupled with ESM method (i.e. ESM-RISM). [for details see S.Nishihara and M.Otani, PRB 96, 115429 (2017)]. The default of mixing_beta is 0.2 for both 3D-RISM and Laue-RISM. For structural relaxation with BFGS, ignore_wolfe is always .TRUE. ."}}},{"$id":"apse/file/applications/espresso/7.2/pw.x/electrons","$schema":"http://json-schema.org/draft-07/schema#","title":"electrons schema","type":"object","additionalProperties":false,"properties":{"electron_maxstep":{"type":"integer","default":100,"description":"maximum number of iterations in a scf step. If exact exchange is active, this will affect the inner loops."},"exx_maxstep":{"type":"integer","default":100,"description":"maximum number of outer iterations in a scf calculation with exact exchange."},"scf_must_converge":{"type":"boolean","default":true,"description":"If .false. do not stop molecular dynamics or ionic relaxation when electron_maxstep is reached. Use with care."},"conv_thr":{"type":"number"},"adaptive_thr":{"type":"boolean","default":false,"description":"If .TRUE. this turns on the use of an adaptive conv_thr for the inner scf loops when using EXX."},"conv_thr_init":{"type":"number","description":"When adaptive_thr = .TRUE. this is the convergence threshold used for the first scf cycle."},"conv_thr_multi":{"type":"number","description":"When adaptive_thr = .TRUE. the convergence threshold for each scf cycle is given by: max( conv_thr, conv_thr_multi * dexx )"},"mixing_mode":{"type":"string","enum":["plain","TF","local-TF"],"default":"plain"},"mixing_beta":{"type":"number","description":"mixing factor for self-consistency"},"mixing_ndim":{"type":"integer","default":8,"description":"number of iterations used in mixing scheme"},"mixing_fixed_ns":{"type":"integer","default":0,"description":"For DFT+U : number of iterations with fixed ns ( ns is the atomic density appearing in the Hubbard term )."},"diagonalization":{"type":"string","enum":["david","cg","ppcg","paro","ParO","rmm-davidson","rmm-paro"],"default":"david"},"diago_thr_init":{"type":"number","description":"Convergence threshold (ethr) for iterative diagonalization (the check is on eigenvalue convergence)."},"diago_cg_maxiter":{"type":"integer","description":"For conjugate gradient diagonalization: max number of iterations"},"diago_ppcg_maxiter":{"type":"integer","description":"For ppcg diagonalization: max number of iterations"},"diago_david_ndim":{"type":"integer","default":2,"description":"For Davidson diagonalization: dimension of workspace (number of wavefunction packets, at least 2 needed)."},"diago_rmm_ndim":{"type":"integer","default":4,"description":"For RMM-DIIS diagonalization: dimension of workspace (number of wavefunction packets, at least 2 needed)."},"diago_rmm_conv":{"type":"boolean","default":false,"description":"If .TRUE., RMM-DIIS is performed up to converge. If .FALSE., RMM-DIIS is performed only once."},"diago_gs_nblock":{"type":"integer","default":16,"description":"For RMM-DIIS diagonalization: blocking size of Gram-Schmidt orthogonalization"},"diago_full_acc":{"type":"boolean","default":false,"description":"If .TRUE. all the empty states are diagonalized at the same level of accuracy of the occupied ones. Otherwise the empty states are diagonalized using a larger threshold (this should not affect total energy, forces, and other ground-state properties)."},"efield":{"type":"number","description":"Amplitude of the finite electric field (in Ry a.u.; 1 a.u. = 36.3609*10^10 V/m). Used only if lelfield==.TRUE. and if k-points (K_POINTS card) are not automatic."},"efield_cart":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"efield_phase":{"type":"string","enum":["read","write","none"],"default":"none"},"startingpot":{"type":"string","enum":["atomic","file"]},"startingwfc":{"type":"string","enum":["atomic","atomic+random","random","file"],"default":"atomic+random"},"tqr":{"type":"boolean","default":false,"description":"If .true., use a real-space algorithm for augmentation charges of ultrasoft pseudopotentials and PAWsets. Faster but numerically less accurate than the default G-space algorithm. Use with care and after testing!"},"real_space":{"type":"boolean","default":false,"description":"If .true., exploit real-space localization to compute matrix elements for nonlocal projectors. Faster and in principle better scaling than the default G-space algorithm, but numerically less accurate, may lead to some loss of translational invariance. Use with care and after testing!"}}},{"$id":"apse/file/applications/espresso/7.2/pw.x/hubbard","$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard schema","type":"object","additionalProperties":false,"properties":{"card_option":{"type":"string","enum":["atomic","ortho-atomic","norm-atomic","wf","pseudo"]},"values":{"oneOf":[{"description":"IF DFT+U","type":"array","items":{"oneOf":[{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1764","additionalProperties":false,"properties":{"U":{"type":"string","enum":["U"],"description":"string constant \"U\"; indicates the specs for the U parameter will be given"},"label":{"type":"string","description":"label of the atom (as defined in ATOMIC_SPECIES)"},"manifold":{"type":"string","description":"specs of the manifold (e.g., 3d, 2p...)"},"u_val":{"type":"number","description":"value of the U parameter (in eV)"}}},{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1784","additionalProperties":false,"properties":{"J0":{"type":"string","enum":["J0"],"description":"string constant \"J0\"; indicates the specs for the J0 parameter will be given"},"label":{"type":"string","description":"label of the atom (as defined in ATOMIC_SPECIES)"},"manifold":{"type":"string","description":"specs of the manifold (e.g., 3d, 2p...)"},"j0_val":{"type":"number","description":"value of the J0 parameter (in eV)"}}}]}},{"description":"IF DFT+U+J","type":"array","items":{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1817","additionalProperties":false,"properties":{"paramType":{"type":"string","enum":["U","J","B","E2","E3"],"description":"character describing the type of Hubbard parameter allowed values: U, J and either B (for d-orbitals) or E2 and E3 (for f-orbitals)"},"label":{"type":"string","description":"label of the atom (as defined in ATOMIC_SPECIES)"},"manifold":{"type":"string","description":"specs of the manifold (e.g., 3d, 2p...)"},"paramValue":{"type":"number","description":"value of the J0 parameter (in eV)"}}}},{"description":"IF DFT+U+V","type":"array","items":{"oneOf":[{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1847","additionalProperties":false,"properties":{"U":{"type":"string","enum":["U"],"description":"string constant \"U\"; indicates the specs for the U parameter will be given"},"label":{"type":"string","description":"label of the atom (as defined in ATOMIC_SPECIES)"},"manifold":{"type":"string","description":"specs of the manifold (e.g., 3d, 2p...)"},"u_val":{"type":"number","description":"value of the U parameter (in eV)"}}},{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1865","additionalProperties":false,"properties":{"J0":{"type":"string","enum":["J0"],"description":"string constant \"J0\"; indicates the specs for the J0 parameter will be given"},"label":{"type":"string","description":"label of the atom (as defined in ATOMIC_SPECIES)"},"manifold":{"type":"string","description":"specs of the manifold (e.g., 3d, 2p...)"},"j0_val":{"type":"number","description":"value of the J0 parameter (in eV)"}}},{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1884","additionalProperties":false,"properties":{"V":{"type":"string","enum":["V"],"description":"string constant \"V\"; indicates the specs for the V parameter will be given"},"label(I)":{"type":"string","description":"label of the atom I (as defined in ATOMIC_SPECIES)"},"manifold(I)":{"type":"string","description":"specs of the manifold for atom I (e.g., 3d, 2p...)"},"label(J)":{"type":"string","description":"label of the atom J (as defined in ATOMIC_SPECIES)"},"manifold(J)":{"type":"string","description":"specs of the manifold for atom J (e.g., 3d, 2p...)"},"I":{"type":"integer","description":"index of the atom I"},"J":{"type":"integer","description":"index of the atom J"},"v_val(I,J)":{"type":"number","description":"value of the V parameter for the atom pair I,J (in eV)"}}}]}}]}}},{"$id":"apse/file/applications/espresso/7.2/pw.x/ions","$schema":"http://json-schema.org/draft-07/schema#","title":"ions schema","type":"object","additionalProperties":false,"oneOf":[{"type":"object","additionalProperties":false,"properties":{"ion_dynamics":{"type":"string","enum":["bfgs","damp","fire"],"default":"bfgs","description":"CASE: calculation == 'relax'"}}},{"type":"object","additionalProperties":false,"properties":{"ion_dynamics":{"type":"string","enum":["verlet","langevin","langevin-smc"],"default":"verlet","description":"CASE: calculation == 'md'"}}},{"type":"object","additionalProperties":false,"properties":{"ion_dynamics":{"type":"string","enum":["bfgs","damp"],"default":"bfgs","description":"CASE: calculation == 'vc-relax'"}}},{"type":"object","additionalProperties":false,"properties":{"ion_dynamics":{"type":"string","enum":["beeman"],"default":"beeman","description":"CASE: calculation == 'vc-md'"}}}],"properties":{"ion_positions":{"type":"string","enum":["default","from_input"],"default":"default"},"ion_velocities":{"type":"string","enum":["default","from_input"],"default":"default"},"pot_extrapolation":{"type":"string","enum":["none","atomic","first_order","second_order"],"default":"atomic","description":"Used to extrapolate the potential from preceding ionic steps."},"wfc_extrapolation":{"type":"string","enum":["none","first_order","second_order"],"default":"none","description":"Used to extrapolate the wavefunctions from preceding ionic steps."},"remove_rigid_rot":{"type":"boolean","default":false,"description":"This keyword is useful when simulating the dynamics and/or the thermodynamics of an isolated system. If set to true the total torque of the internal forces is set to zero by adding new forces that compensate the spurious interaction with the periodic images. This allows for the use of smaller supercells."},"ion_temperature":{"type":"string","enum":["rescaling","rescale-v","rescale-T","reduce-T","berendsen","andersen","svr","initial","not_controlled"],"default":"not_controlled"},"tempw":{"type":"number","description":"Starting temperature (Kelvin) in MD runs target temperature for most thermostats.","default":300},"tolp":{"type":"number","description":"Tolerance for velocity rescaling. Velocities are rescaled if the run-averaged and target temperature differ more than tolp.","default":100},"delta_t":{"type":"number","default":1},"nraise":{"type":"integer","default":1},"refold_pos":{"type":"boolean","default":false,"description":"This keyword applies only in the case of molecular dynamics or damped dynamics. If true the ions are refolded at each step into the supercell."},"upscale":{"type":"number","description":"Max reduction factor for conv_thr during structural optimization conv_thr is automatically reduced when the relaxation approaches convergence so that forces are still accurate, but conv_thr will not be reduced to less that conv_thr / upscale.","default":100},"bfgs_ndim":{"type":"integer","default":1,"description":"Number of old forces and displacements vectors used in the PULAY mixing of the residual vectors obtained on the basis of the inverse hessian matrix given by the BFGS algorithm."},"trust_radius_max":{"type":"number","description":"Maximum ionic displacement in the structural relaxation. (bfgs only)","default":0.8},"trust_radius_min":{"type":"number","description":"Minimum ionic displacement in the structural relaxation BFGS is reset when trust_radius < trust_radius_min. (bfgs only)","default":0.001},"trust_radius_ini":{"type":"number","description":"Initial ionic displacement in the structural relaxation. (bfgs only)","default":0.5},"w_1":{"type":"number","default":0.01},"w_2":{"type":"number","description":"Parameters used in line search based on the Wolfe conditions. (bfgs only)","default":0.5},"fire_alpha_init":{"type":"number","description":"Initial value of the alpha mixing factor in the FIRE minimization scheme; recommended values are between 0.1 and 0.3","default":0.2},"fire_falpha":{"type":"number","description":"Scaling of the alpha mixing parameter for steps with P > 0;","default":0.99},"fire_nmin":{"type":"integer","default":5,"description":"Minimum number of steps with P > 0 before increase of dt"},"fire_f_inc":{"type":"number","description":"Factor for increasing dt","default":1.1},"fire_f_dec":{"type":"number","description":"Factor for decreasing dt","default":0.5},"fire_dtmax":{"type":"number","description":"Determines the maximum value of dt in the FIRE minimization; dtmax = fire_dtmax*dt","default":10}}},{"$id":"apse/file/applications/espresso/7.2/pw.x/k-points","$schema":"http://json-schema.org/draft-07/schema#","title":"k points schema","type":"object","additionalProperties":false,"properties":{"card_option":{"type":"string","enum":["tpiba","automatic","crystal","gamma","tpiba_b","crystal_b","tpiba_c","crystal_c"]},"values":{"oneOf":[{"type":"array","description":"K_POINTS tpiba | crystal | tpiba_b | crystal_b | tpiba_c | crystal_c","items":{"type":"object","additionalProperties":false,"properties":{"nks":{"type":"integer","description":"Number of supplied special k-points."},"xk_x":{"type":"number"},"xk_y":{"type":"number"},"xk_z":{"type":"number"},"wk":{"type":"number"}}}},{"type":"object","description":"K_POINTS automatic","additionalProperties":false,"properties":{"nk1":{"type":"integer","description":"Number of supplied special k-points."},"nk2":{"type":"integer","description":"Number of supplied special k-points."},"nk3":{"type":"integer","description":"Number of supplied special k-points."},"sk1":{"type":"integer","description":"Number of supplied special k-points."},"sk2":{"type":"integer","description":"Number of supplied special k-points."},"sk3":{"type":"integer","description":"Number of supplied special k-points."}}},{"type":"null","description":"K_POINTS gamma"}]}}},{"$id":"apse/file/applications/espresso/7.2/pw.x/system","$schema":"http://json-schema.org/draft-07/schema#","title":"system schema","type":"object","additionalProperties":false,"anyOf":[{"properties":{"celldm":{"type":"array","items":{"type":"number"},"minItems":6,"maxItems":6}}},{"properties":{"A":{"type":"number"},"B":{"type":"number"},"C":{"type":"number"},"cosAB":{"type":"number"},"cosAC":{"type":"number"},"cosBC":{"type":"number"}}}],"properties":{"ibrav":{"type":"integer"},"nat":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"ntyp":{"type":"integer","description":"number of types of atoms in the unit cell"},"nbnd":{"type":"integer","description":"Default: for an insulator, nbnd = number of valence bands (nbnd = # of electrons /2); for a metal, 20% more (minimum 4 more)"},"nbnd_cond":{"type":"integer","description":"Default: nbnd_cond = nbnd - # of electrons / 2 in the collinear case; nbnd_cond = nbnd - # of electrons in the noncollinear case."},"tot_charge":{"type":"number","default":0},"starting_charge":{"type":"number","default":0,"description":"starting charge on atomic type 'i', to create starting potential with startingpot = 'atomic'."},"tot_magnetization":{"type":"number","default":-10000,"description":"Total majority spin charge - minority spin charge. Used to impose a specific total electronic magnetization. If unspecified then tot_magnetization variable is ignored and the amount of electronic magnetization is determined during the self-consistent cycle."},"starting_magnetization":{"type":"array","items":{"type":"number","default":0,"minimum":-1,"maximum":1}},"ecutwfc":{"type":"number","description":"kinetic energy cutoff (Ry) for wavefunctions"},"ecutrho":{"type":"number","description":"Kinetic energy cutoff (Ry) for charge density and potential For norm-conserving pseudopotential you should stick to the default value, you can reduce it by a little but it will introduce noise especially on forces and stress. Default: 4 * ecutwfc"},"ecutfock":{"type":"number","description":"Kinetic energy cutoff (Ry) for the exact exchange operator in EXX type calculations. By default this is the same as ecutrho but in some EXX calculations, a significant speed-up can be obtained by reducing ecutfock, at the expense of some loss in accuracy. Must be .gt. ecutwfc. Not implemented for stress calculation and for US-PP and PAW pseudopotentials."},"nr1":{"type":"integer","description":"Three-dimensional FFT mesh (hard grid) for charge density (and scf potential). If not specified the grid is calculated based on the cutoff for charge density (see also ecutrho)"},"nr2":{"type":"integer","description":"Three-dimensional FFT mesh (hard grid) for charge density (and scf potential). If not specified the grid is calculated based on the cutoff for charge density (see also ecutrho)"},"nr3":{"type":"integer","description":"Three-dimensional FFT mesh (hard grid) for charge density (and scf potential). If not specified the grid is calculated based on the cutoff for charge density (see also ecutrho)"},"nr1s":{"type":"integer","description":"Three-dimensional mesh for wavefunction FFT and for the smooth part of charge density ( smooth grid ). Coincides with nr1, nr2, nr3 if ecutrho = 4 * ecutwfc ( default )"},"nr2s":{"type":"integer","description":"Three-dimensional mesh for wavefunction FFT and for the smooth part of charge density ( smooth grid ). Coincides with nr1, nr2, nr3 if ecutrho = 4 * ecutwfc ( default )"},"nr3s":{"type":"integer","description":"Three-dimensional mesh for wavefunction FFT and for the smooth part of charge density ( smooth grid ). Coincides with nr1, nr2, nr3 if ecutrho = 4 * ecutwfc ( default )"},"nosym":{"type":"boolean","default":false},"nosym_evc":{"type":"boolean","default":false},"noinv":{"type":"boolean","default":false,"description":"if (.TRUE.) disable the usage of k => -k symmetry (time reversal) in k-point generation"},"no_t_rev":{"type":"boolean","default":false,"description":"if (.TRUE.) disable the usage of magnetic symmetry operations that consist in a rotation + time reversal."},"force_symmorphic":{"type":"boolean","default":false,"description":"if (.TRUE.) force the symmetry group to be symmorphic by disabling symmetry operations having an associated fractionary translation"},"use_all_frac":{"type":"boolean","default":false},"occupations":{"type":"string","enum":["smearing","tetrahedra","tetrahedra_lin","tetrahedra_opt","fixed","from_input"]},"one_atom_occupations":{"type":"boolean","default":false},"starting_spin_angle":{"type":"boolean","default":false},"degauss_cond":{"type":"number","default":0,"description":"value of the gaussian spreading (Ry) for brillouin-zone integration in the conduction manifold in a two-chemical potential calculation (twochem=.true.)."},"nelec_cond":{"type":"number","default":0,"description":"Number of electrons placed in the conduction manifold in a two-chemical potential calculation (twochem=.true.). Of the total # of electrons nelec, nelec-nelec_cond will occupy the valence manifold and nelec_cond will be constrained in the conduction manifold."},"degauss":{"type":"number","default":0,"description":"value of the gaussian spreading (Ry) for brillouin-zone integration in metals."},"smearing":{"type":"string","enum":["gaussian","gauss","methfessel-paxton","m-p","mp","marzari-vanderbilt","cold","m-v","mv","fermi-dirac","f-d","fd"],"default":"gaussian"},"nspin":{"type":"integer","default":1},"sic_gamma":{"type":"number","default":0,"description":"Strength of the gammaDFT potential."},"pol_type":{"type":"string","enum":["e","h"],"description":"Type of polaron in gammaDFT."},"sic_energy":{"type":"boolean","default":false,"description":"Enable the calculation of the total energy in gammaDFT. When .true., a preliminary calculation is performed to calculate the electron density in the absence of the polaron. When .false., the total energy printed in output should not be considered. For structural relaxations, it is recommended to use .false. to avoid doubling the computational cost."},"sci_vb":{"type":"number","default":0,"description":"Valence band shift (in eV) through self-consistent scissor operator. When performing gammaDFT calculations of polarons, the polaron level is not shifted."},"sci_cb":{"type":"number","default":0,"description":"Conduction band band shift (in eV) through self-consistent scissor operator. When performing gammaDFT calculations of polarons, the polaron level is not shifted."},"noncolin":{"type":"boolean","default":false,"description":"if .true. the program will perform a noncollinear calculation."},"ecfixed":{"type":"number","default":0},"qcutz":{"type":"number","default":0},"q2sigma":{"type":"number","default":0.1},"input_dft":{"type":"string","description":"Exchange-correlation functional: eg 'PBE', 'BLYP' etc See Modules/funct.f90 for allowed values. Overrides the value read from pseudopotential files. Use with care and if you know what you are doing!"},"ace":{"type":"boolean","default":true,"description":"Use Adaptively Compressed Exchange operator as in Lin Lin, J. Chem. Theory Comput. 2016, 12, 2242--2249, doi:10.1021/acs.jctc.6b00092"},"exx_fraction":{"type":"number","description":"Fraction of EXX for hybrid functional calculations. In the case of input_dft='PBE0', the default value is 0.25, while for input_dft='B3LYP' the exx_fraction default value is 0.20."},"screening_parameter":{"type":"number","default":0.106,"description":"screening_parameter for HSE like hybrid functionals."},"exxdiv_treatment":{"type":"string","default":"gygi-baldereschi","enum":["gygi-baldereschi","vcut_spherical","vcut_ws","none"]},"x_gamma_extrapolation":{"type":"boolean","default":true,"description":"Specific for EXX. If .true., extrapolate the G=0 term of the potential"},"ecutvcut":{"type":"number","description":"Reciprocal space cutoff for correcting Coulomb potential divergencies at small q vectors."},"nqx1":{"type":"integer","default":0,"description":"Three-dimensional mesh for q (k1-k2) sampling of the Fock operator (EXX). Can be smaller than the number of k-points."},"nqx2":{"type":"integer","description":"Three-dimensional mesh for q (k1-k2) sampling of the Fock operator (EXX). Can be smaller than the number of k-points."},"nqx3":{"type":"integer","description":"Three-dimensional mesh for q (k1-k2) sampling of the Fock operator (EXX). Can be smaller than the number of k-points."},"localization_thr":{"type":"number","default":0,"description":"Overlap threshold over which the exchange integral over a pair of localized orbitals is included in the evaluation of EXX operator. Any value greater than 0.0 triggers the SCDM localization and the evaluation on EXX using the localized orbitals. Very small value of the threshold should yield the same result as the default EXX evaluation"},"Hubbard_occ":{"type":"array","items":{"type":"array","items":[{"type":"integer","minimum":1},{"type":"integer","minimum":1,"maximum":3},{"type":"number"}],"minItems":3,"maxItems":3}},"Hubbard_alpha":{"type":"array","items":{"type":"number","default":0}},"Hubbard_beta":{"type":"array","items":{"type":"number","default":0}},"starting_ns_eigenvalue":{"type":"array","items":{"type":"array","items":{"type":"array","items":{"type":"number"}}}},"dmft":{"type":"boolean","default":false,"description":"If true, nscf calculation will exit in restart mode, scf calculation will restart from there if DMFT updates are provided as hdf5 archive. Scf calculation should be used only with electron_maxstep = 1."},"dmft_prefix":{"type":"string","description":"prepended to hdf5 archive: dmft_prefix.h5"},"ensemble_energies":{"type":"boolean","default":false,"description":"If ensemble_energies = .true., an ensemble of xc energies is calculated non-selfconsistently for perturbed exchange-enhancement factors and LDA vs. PBE correlation ratios after each converged electronic ground state calculation."},"edir":{"type":"integer","description":"The direction of the electric field or dipole correction is parallel to the bg(:,edir) reciprocal lattice vector, so the potential is constant in planes defined by FFT grid points; edir = 1, 2 or 3. Used only if tefield is .TRUE."},"emaxpos":{"type":"number","default":0.5,"description":"Position of the maximum of the saw-like potential along crystal axis edir, within the unit cell (see below), 0 < emaxpos < 1 Used only if tefield is .TRUE."},"eopreg":{"type":"number","default":0.1,"description":"Zone in the unit cell where the saw-like potential decreases. ( see below, 0 < eopreg < 1 ). Used only if tefield is .TRUE."},"eamp":{"type":"number","default":0.001},"angle1":{"type":"array","items":{"type":"number"},"maxItems":1,"minItems":1,"description":"The angle expressed in degrees between the initial magnetization and the z-axis. For noncollinear calculations only; index i runs over the atom types."},"angle2":{"type":"array","items":{"type":"number"},"maxItems":1,"minItems":1,"description":"The angle expressed in degrees between the projection of the initial magnetization on x-y plane and the x-axis. For noncollinear calculations only."},"lforcet":{"type":"boolean","description":"When starting a non collinear calculation using an existing density file from a collinear lsda calculation assumes previous density points in z direction and rotates it in the direction described by angle1 and angle2 variables for atomic type 1"},"constrained_magnetization":{"type":"string","enum":["none","total","atomic","total direction","atomic direction"],"default":"none","description":"Used to perform constrained calculations in magnetic systems."},"fixed_magnetization":{"type":"array","items":{"type":"number","default":0},"maxItems":3,"minItems":3},"lambda":{"type":"number","default":1,"description":"parameter used for constrained_magnetization calculations N.B.: if the scf calculation does not converge, try to reduce lambda to obtain convergence, then restart the run with a larger lambda"},"report":{"type":"integer","default":-1,"description":"determines when atomic magnetic moments are printed on output"},"lspinorb":{"type":"boolean","description":"if .TRUE. the noncollinear code can use a pseudopotential with spin-orbit."},"assume_isolated":{"type":"string","enum":["none","makov-payne","m-p","mp","martyna-tuckerman","m-t","mt","esm","2D"],"default":"none","description":"Used to perform calculation assuming the system to be isolated (a molecule or a cluster in a 3D supercell)"},"esm_bc":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"esm_w":{"type":"number","default":0,"description":"If assume_isolated = 'esm', determines the position offset [in a.u.] of the start of the effective screening region, measured relative to the cell edge. (ESM region begins at z = +/- [L_z/2 + esm_w] )."},"esm_efield":{"type":"number","default":0,"description":"If assume_isolated = 'esm' and esm_bc = 'bc2', gives the magnitude of the electric field [Ry/a.u.] to be applied between semi-infinite ESM electrodes."},"esm_nfit":{"type":"integer","default":4,"description":"If assume_isolated = 'esm', gives the number of z-grid points for the polynomial fit along the cell edge."},"lgcscf":{"type":"boolean","default":false,"description":"If .TRUE. perform a constant bias potential (constant-mu) calculation with Grand-Canonical SCF."},"gcscf_mu":{"type":"number","description":"The target Fermi energy (eV) of GC-SCF. One can start with appropriate total charge of the system by giving tot_charge"},"gcscf_conv_thr":{"type":"number","default":0.01,"description":"Convergence threshold of Fermi energy (eV) for GC-SCF."},"gcscf_beta":{"type":"number","default":0.05,"description":"Mixing factor for GC-SCF. Larger values are recommended, if systems with small DOS on Fermi surface as graphite."},"vdw_corr":{"type":"string","enum":["none","grimme-d2","Grimme-D2","DFT-D","dft-d","grimme-d3","Grimme-D3","DFT-D3","dft-d3","TS","ts","ts-vdw","ts-vdW","tkatchenko-scheffler","MBD","mbd","many-body-dispersion","mbd_vdw","XDM","xdm"],"default":"none","description":"Type of Van der Waals correction"},"london":{"type":"boolean","default":false,"description":"OBSOLESCENT, same as vdw_corr='DFT-D'"},"london_s6":{"type":"number","default":0.75,"description":"global scaling parameter for DFT-D. Default is good for PBE."},"london_c6":{"type":"number","description":"atomic C6 coefficient of each atom type"},"london_rvdw":{"type":"number","description":"atomic vdw radii of each atom type"},"london_rcut":{"type":"number","default":200,"description":"cutoff radius (a.u.) for dispersion interactions"},"dftd3_version":{"type":"integer","default":3,"minimum":2,"maximum":6,"description":"Version of Grimme implementation of Grimme-D3"},"dftd3_threebody":{"type":"boolean","default":true,"description":"Turn three-body terms in Grimme-D3 on. If .false. two-body contributions only are computed, using two-body parameters of Grimme-D3. If dftd3_version=2, three-body contribution is always disabled."},"ts_vdw_econv_thr":{"type":"number","default":0.000001,"description":"Optional: controls the convergence of the vdW energy (and forces). The default value is a safe choice, likely too safe, but you do not gain much in increasing it"},"ts_vdw_isolated":{"type":"boolean","default":false,"description":"Optional: set it to .TRUE. when computing the Tkatchenko-Scheffler vdW energy or the Many-Body dispersion (MBD) energy for an isolated (non-periodic) system."},"xdm":{"type":"boolean","default":false,"description":"OBSOLESCENT, same as vdw_corr='xdm'"},"xdm_a1":{"type":"number","default":0.6836,"description":"Damping function parameter a1 (adimensional)"},"xdm_a2":{"type":"number","default":1.5045,"description":"Damping function parameter a2 (angstrom)"},"space_group":{"type":"integer","default":0,"description":"The number of the space group of the crystal, as given in the International Tables of Crystallography A (ITA)"},"uniqueb":{"type":"boolean","default":false,"description":"Used only for monoclinic lattices"},"origin_choice":{"type":"integer","default":1,"description":"Used only for space groups that in the ITA allow the use of two different origins"},"rhombohedral":{"type":"boolean","default":true,"description":"Used only for rhombohedral space groups."},"zgate":{"type":"number","default":0.5,"description":"used only if gate = .TRUE."},"relaxz":{"type":"boolean","default":false,"description":"used only if gate = .TRUE."},"block":{"type":"boolean","default":false,"description":"used only if gate = .TRUE."},"block_1":{"type":"number","default":0.45,"description":"used only if gate = .TRUE. and block = .TRUE."},"block_2":{"type":"number","default":0.55,"description":"used only if gate = .TRUE. and block = .TRUE."},"block_height":{"type":"number","default":0.1,"description":"used only if gate = .TRUE. and block = .TRUE."},"nextffield":{"type":"integer","default":0,"description":"Number of activated external ionic force fields."}},"required":["ibrav","nat","ntyp","ecutwfc"]},{"$id":"apse/file/applications/espresso/7.2/pw.x","$schema":"http://json-schema.org/draft-07/schema#","title":"pwx main schema","additionalProperties":false,"type":"object","properties":{"CONTROL":{"$schema":"http://json-schema.org/draft-07/schema#","title":"control schema","type":"object","additionalProperties":false,"properties":{"calculation":{"description":"A string describing the task to be performed","type":"string","enum":["scf","nscf","bands","relax","md","vc-relax","vc-md"],"default":"scf"},"title":{"description":"reprinted on output.","type":"string","default":""},"verbosity":{"description":"Currently two verbosity levels are implemented: high, low. 'debug' and 'medium' have the same effect as 'high'; 'default' and 'minimal' as 'low'","type":"string","enum":["high","low","debug","medium","minimal","default"],"default":"low"},"restart_mode":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"wf_collect":{"type":"boolean","description":"OBSOLETE - NO LONGER IMPLEMENTED"},"nstep":{"description":"Default: 1 if calculation == 'scf', 'nscf', 'bands'; 50 for the other cases; Number of molecular-dynamics or structural optimization steps performed in this run. If set to 0, the code performs a quick \"dry run\", stopping just after initialization. This is useful to check for input correctness and to have the summary printed. NOTE: in MD calculations, the code will perform \"nstep\" steps even if restarting from a previously interrupted calculation.","type":"number","default":1},"iprint":{"description":"band energies are written every iprint iterations","type":"number"},"tstress":{"type":"boolean","default":false,"description":"calculate stress. It is set to .TRUE. automatically if calculation == 'vc-md' or 'vc-relax'"},"tprnfor":{"type":"boolean","description":"calculate forces. It is set to .TRUE. automatically if calculation == 'relax','md','vc-md'"},"dt":{"type":"number","description":"time step for molecular dynamics, in Rydberg atomic units (1 a.u.=4.8378 * 10^-17 s : beware, the CP code uses Hartree atomic units, half that much!!!)","default":20},"outdir":{"type":"string","description":"input, temporary, output files are found in this directory, see also wfcdir"},"wfcdir":{"type":"string","description":"This directory specifies where to store files generated by each processor (*.wfc{N}, *.igk{N}, etc.). Useful for machines without a parallel file system: set wfcdir to a local file system, while outdir should be a parallel or network file system, visible to all processors. Beware: in order to restart from interrupted runs, or to perform further calculations using the produced data files, you may need to copy files to outdir. Works only for pw.x."},"prefix":{"type":"string","description":"prepended to input/output filenames: prefix.wfc, prefix.rho, etc.","default":"pwscf"},"lkpoint_dir":{"type":"boolean","description":"OBSOLETE - NO LONGER IMPLEMENTED"},"max_seconds":{"type":"number","default":10000000,"description":"Jobs stops after max_seconds CPU time. Use this option in conjunction with option restart_mode if you need to split a job too long to complete into shorter jobs that fit into your batch queues."},"etot_conv_thr":{"type":"number","default":0.0001,"description":"Convergence threshold on total energy (a.u) for ionic minimization: the convergence criterion is satisfied when the total energy changes less than etot_conv_thr between two consecutive scf steps. Note that etot_conv_thr is extensive, like the total energy. See also forc_conv_thr - both criteria must be satisfied"},"forc_conv_thr":{"type":"number","default":0.001,"description":"Convergence threshold on forces (a.u) for ionic minimization: the convergence criterion is satisfied when all components of all forces are smaller than forc_conv_thr. See also etot_conv_thr - both criteria must be satisfied"},"disk_io":{"type":"string","enum":["high","medium","low","nowf","none"],"description":"Specifies the amount of disk I/O activity: (only for binary files and xml data file in data directory; other files printed at each molecular dynamics / structural optimization step are not controlled by this option )"},"pseudo_dir":{"type":"string","description":"directory containing pseudopotential files. Default: value of the $ESPRESSO_PSEUDO environment variable if set; '$HOME/espresso/pseudo/' otherwise"},"tefield":{"type":"boolean","default":false,"description":"If .TRUE. a saw-like potential simulating an electric field is added to the bare ionic potential. See variables edir, eamp, emaxpos, eopreg for the form and size of the added potential."},"dipfield":{"type":"boolean","default":false,"description":"If .TRUE. and tefield==.TRUE. a dipole correction is also added to the bare ionic potential - implements the recipe of L. Bengtsson, PRB 59, 12301 (1999). See variables edir, emaxpos, eopreg for the form of the correction. Must be used ONLY in a slab geometry, for surface calculations, with the discontinuity FALLING IN THE EMPTY SPACE."},"lelfield":{"type":"boolean","default":false,"description":"If .TRUE. a homogeneous finite electric field described through the modern theory of the polarization is applied. This is different from tefield == .true. !"},"nberrycyc":{"type":"integer","default":1,"description":"In the case of a finite electric field ( lelfield == .TRUE. ) it defines the number of iterations for converging the wavefunctions in the electric field Hamiltonian, for each external iteration on the charge density"},"lorbm":{"type":"boolean","default":false,"description":"If .TRUE. perform orbital magnetization calculation."},"lberry":{"type":"boolean","default":false,"description":"If .TRUE. perform a Berry phase calculation. See the header of PW/src/bp_c_phase.f90 for documentation"},"gdir":{"type":"number","description":"For Berry phase calculation: direction of the k-point strings in reciprocal space. Allowed values: 1, 2, 3 1=first, 2=second, 3=third reciprocal lattice vector For calculations with finite electric fields (lelfield==.true.) \"gdir\" is the direction of the field."},"nppstr":{"type":"number","description":"For Berry phase calculation: number of k-points to be calculated along each symmetry-reduced string. The same for calculation with finite electric fields (lelfield==.true.)."},"gate":{"type":"boolean","default":false,"description":"In the case of charged cells (tot_charge .ne. 0) setting gate = .TRUE. represents the counter charge (i.e. -tot_charge) not by a homogeneous background charge but with a charged plate, which is placed at zgate (see below). Details of the gate potential can be found in T. Brumme, M. Calandra, F. Mauri; PRB 89, 245406 (2014). Note, that in systems which are not symmetric with respect to the plate, one needs to enable the dipole correction! (dipfield=.true.). Currently, symmetry can be used with gate=.true. but carefully check that no symmetry is included which maps z to -z even if in principle one could still use them for symmetric systems (i.e. no dipole correction). For nosym=.false. verbosity is set to 'high'. Note: this option was called \"monopole\" in v6.0 and 6.1 of pw.x"},"twochem":{"type":"boolean","default":false,"description":"IF .TRUE. , a two chemical potential calculation for the simulation of photoexcited systems is performed, constraining a fraction of the electrons in the conduction manifold."},"lfcp":{"type":"boolean","default":false,"description":"If .TRUE. perform a constant bias potential (constant-mu) calculation for a system with ESM method. See the header of PW/src/fcp_module.f90 for documentation. To perform the calculation, you must set a namelist FCP."},"trism":{"type":"boolean","default":false,"description":"If .TRUE. perform a 3D-RISM-SCF calculation [for details see H.Sato et al., JCP 112, 9463 (2000), doi:10.1063/1.481564]. The solvent's distributions are calculated by 3D-RISM, though solute is treated as SCF. The charge density and the atomic positions are optimized, simultaneously with the solvents. To perform the calculation, you must set a namelist RISM and a card SOLVENTS. If assume_isolated = 'esm' and esm_bc = 'bc1', Laue-RISM is calculated instead of 3D-RISM and coupled with ESM method (i.e. ESM-RISM). [for details see S.Nishihara and M.Otani, PRB 96, 115429 (2017)]. The default of mixing_beta is 0.2 for both 3D-RISM and Laue-RISM. For structural relaxation with BFGS, ignore_wolfe is always .TRUE. ."}}},"SYSTEM":{"$schema":"http://json-schema.org/draft-07/schema#","title":"system schema","type":"object","additionalProperties":false,"anyOf":[{"properties":{"celldm":{"type":"array","items":{"type":"number"},"minItems":6,"maxItems":6}}},{"properties":{"A":{"type":"number"},"B":{"type":"number"},"C":{"type":"number"},"cosAB":{"type":"number"},"cosAC":{"type":"number"},"cosBC":{"type":"number"}}}],"properties":{"ibrav":{"type":"integer"},"nat":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"ntyp":{"type":"integer","description":"number of types of atoms in the unit cell"},"nbnd":{"type":"integer","description":"Default: for an insulator, nbnd = number of valence bands (nbnd = # of electrons /2); for a metal, 20% more (minimum 4 more)"},"nbnd_cond":{"type":"integer","description":"Default: nbnd_cond = nbnd - # of electrons / 2 in the collinear case; nbnd_cond = nbnd - # of electrons in the noncollinear case."},"tot_charge":{"type":"number","default":0},"starting_charge":{"type":"number","default":0,"description":"starting charge on atomic type 'i', to create starting potential with startingpot = 'atomic'."},"tot_magnetization":{"type":"number","default":-10000,"description":"Total majority spin charge - minority spin charge. Used to impose a specific total electronic magnetization. If unspecified then tot_magnetization variable is ignored and the amount of electronic magnetization is determined during the self-consistent cycle."},"starting_magnetization":{"type":"array","items":{"type":"number","default":0,"minimum":-1,"maximum":1}},"ecutwfc":{"type":"number","description":"kinetic energy cutoff (Ry) for wavefunctions"},"ecutrho":{"type":"number","description":"Kinetic energy cutoff (Ry) for charge density and potential For norm-conserving pseudopotential you should stick to the default value, you can reduce it by a little but it will introduce noise especially on forces and stress. Default: 4 * ecutwfc"},"ecutfock":{"type":"number","description":"Kinetic energy cutoff (Ry) for the exact exchange operator in EXX type calculations. By default this is the same as ecutrho but in some EXX calculations, a significant speed-up can be obtained by reducing ecutfock, at the expense of some loss in accuracy. Must be .gt. ecutwfc. Not implemented for stress calculation and for US-PP and PAW pseudopotentials."},"nr1":{"type":"integer","description":"Three-dimensional FFT mesh (hard grid) for charge density (and scf potential). If not specified the grid is calculated based on the cutoff for charge density (see also ecutrho)"},"nr2":{"type":"integer","description":"Three-dimensional FFT mesh (hard grid) for charge density (and scf potential). If not specified the grid is calculated based on the cutoff for charge density (see also ecutrho)"},"nr3":{"type":"integer","description":"Three-dimensional FFT mesh (hard grid) for charge density (and scf potential). If not specified the grid is calculated based on the cutoff for charge density (see also ecutrho)"},"nr1s":{"type":"integer","description":"Three-dimensional mesh for wavefunction FFT and for the smooth part of charge density ( smooth grid ). Coincides with nr1, nr2, nr3 if ecutrho = 4 * ecutwfc ( default )"},"nr2s":{"type":"integer","description":"Three-dimensional mesh for wavefunction FFT and for the smooth part of charge density ( smooth grid ). Coincides with nr1, nr2, nr3 if ecutrho = 4 * ecutwfc ( default )"},"nr3s":{"type":"integer","description":"Three-dimensional mesh for wavefunction FFT and for the smooth part of charge density ( smooth grid ). Coincides with nr1, nr2, nr3 if ecutrho = 4 * ecutwfc ( default )"},"nosym":{"type":"boolean","default":false},"nosym_evc":{"type":"boolean","default":false},"noinv":{"type":"boolean","default":false,"description":"if (.TRUE.) disable the usage of k => -k symmetry (time reversal) in k-point generation"},"no_t_rev":{"type":"boolean","default":false,"description":"if (.TRUE.) disable the usage of magnetic symmetry operations that consist in a rotation + time reversal."},"force_symmorphic":{"type":"boolean","default":false,"description":"if (.TRUE.) force the symmetry group to be symmorphic by disabling symmetry operations having an associated fractionary translation"},"use_all_frac":{"type":"boolean","default":false},"occupations":{"type":"string","enum":["smearing","tetrahedra","tetrahedra_lin","tetrahedra_opt","fixed","from_input"]},"one_atom_occupations":{"type":"boolean","default":false},"starting_spin_angle":{"type":"boolean","default":false},"degauss_cond":{"type":"number","default":0,"description":"value of the gaussian spreading (Ry) for brillouin-zone integration in the conduction manifold in a two-chemical potential calculation (twochem=.true.)."},"nelec_cond":{"type":"number","default":0,"description":"Number of electrons placed in the conduction manifold in a two-chemical potential calculation (twochem=.true.). Of the total # of electrons nelec, nelec-nelec_cond will occupy the valence manifold and nelec_cond will be constrained in the conduction manifold."},"degauss":{"type":"number","default":0,"description":"value of the gaussian spreading (Ry) for brillouin-zone integration in metals."},"smearing":{"type":"string","enum":["gaussian","gauss","methfessel-paxton","m-p","mp","marzari-vanderbilt","cold","m-v","mv","fermi-dirac","f-d","fd"],"default":"gaussian"},"nspin":{"type":"integer","default":1},"sic_gamma":{"type":"number","default":0,"description":"Strength of the gammaDFT potential."},"pol_type":{"type":"string","enum":["e","h"],"description":"Type of polaron in gammaDFT."},"sic_energy":{"type":"boolean","default":false,"description":"Enable the calculation of the total energy in gammaDFT. When .true., a preliminary calculation is performed to calculate the electron density in the absence of the polaron. When .false., the total energy printed in output should not be considered. For structural relaxations, it is recommended to use .false. to avoid doubling the computational cost."},"sci_vb":{"type":"number","default":0,"description":"Valence band shift (in eV) through self-consistent scissor operator. When performing gammaDFT calculations of polarons, the polaron level is not shifted."},"sci_cb":{"type":"number","default":0,"description":"Conduction band band shift (in eV) through self-consistent scissor operator. When performing gammaDFT calculations of polarons, the polaron level is not shifted."},"noncolin":{"type":"boolean","default":false,"description":"if .true. the program will perform a noncollinear calculation."},"ecfixed":{"type":"number","default":0},"qcutz":{"type":"number","default":0},"q2sigma":{"type":"number","default":0.1},"input_dft":{"type":"string","description":"Exchange-correlation functional: eg 'PBE', 'BLYP' etc See Modules/funct.f90 for allowed values. Overrides the value read from pseudopotential files. Use with care and if you know what you are doing!"},"ace":{"type":"boolean","default":true,"description":"Use Adaptively Compressed Exchange operator as in Lin Lin, J. Chem. Theory Comput. 2016, 12, 2242--2249, doi:10.1021/acs.jctc.6b00092"},"exx_fraction":{"type":"number","description":"Fraction of EXX for hybrid functional calculations. In the case of input_dft='PBE0', the default value is 0.25, while for input_dft='B3LYP' the exx_fraction default value is 0.20."},"screening_parameter":{"type":"number","default":0.106,"description":"screening_parameter for HSE like hybrid functionals."},"exxdiv_treatment":{"type":"string","default":"gygi-baldereschi","enum":["gygi-baldereschi","vcut_spherical","vcut_ws","none"]},"x_gamma_extrapolation":{"type":"boolean","default":true,"description":"Specific for EXX. If .true., extrapolate the G=0 term of the potential"},"ecutvcut":{"type":"number","description":"Reciprocal space cutoff for correcting Coulomb potential divergencies at small q vectors."},"nqx1":{"type":"integer","default":0,"description":"Three-dimensional mesh for q (k1-k2) sampling of the Fock operator (EXX). Can be smaller than the number of k-points."},"nqx2":{"type":"integer","description":"Three-dimensional mesh for q (k1-k2) sampling of the Fock operator (EXX). Can be smaller than the number of k-points."},"nqx3":{"type":"integer","description":"Three-dimensional mesh for q (k1-k2) sampling of the Fock operator (EXX). Can be smaller than the number of k-points."},"localization_thr":{"type":"number","default":0,"description":"Overlap threshold over which the exchange integral over a pair of localized orbitals is included in the evaluation of EXX operator. Any value greater than 0.0 triggers the SCDM localization and the evaluation on EXX using the localized orbitals. Very small value of the threshold should yield the same result as the default EXX evaluation"},"Hubbard_occ":{"type":"array","items":{"type":"array","items":[{"type":"integer","minimum":1},{"type":"integer","minimum":1,"maximum":3},{"type":"number"}],"minItems":3,"maxItems":3}},"Hubbard_alpha":{"type":"array","items":{"type":"number","default":0}},"Hubbard_beta":{"type":"array","items":{"type":"number","default":0}},"starting_ns_eigenvalue":{"type":"array","items":{"type":"array","items":{"type":"array","items":{"type":"number"}}}},"dmft":{"type":"boolean","default":false,"description":"If true, nscf calculation will exit in restart mode, scf calculation will restart from there if DMFT updates are provided as hdf5 archive. Scf calculation should be used only with electron_maxstep = 1."},"dmft_prefix":{"type":"string","description":"prepended to hdf5 archive: dmft_prefix.h5"},"ensemble_energies":{"type":"boolean","default":false,"description":"If ensemble_energies = .true., an ensemble of xc energies is calculated non-selfconsistently for perturbed exchange-enhancement factors and LDA vs. PBE correlation ratios after each converged electronic ground state calculation."},"edir":{"type":"integer","description":"The direction of the electric field or dipole correction is parallel to the bg(:,edir) reciprocal lattice vector, so the potential is constant in planes defined by FFT grid points; edir = 1, 2 or 3. Used only if tefield is .TRUE."},"emaxpos":{"type":"number","default":0.5,"description":"Position of the maximum of the saw-like potential along crystal axis edir, within the unit cell (see below), 0 < emaxpos < 1 Used only if tefield is .TRUE."},"eopreg":{"type":"number","default":0.1,"description":"Zone in the unit cell where the saw-like potential decreases. ( see below, 0 < eopreg < 1 ). Used only if tefield is .TRUE."},"eamp":{"type":"number","default":0.001},"angle1":{"type":"array","items":{"type":"number"},"maxItems":1,"minItems":1,"description":"The angle expressed in degrees between the initial magnetization and the z-axis. For noncollinear calculations only; index i runs over the atom types."},"angle2":{"type":"array","items":{"type":"number"},"maxItems":1,"minItems":1,"description":"The angle expressed in degrees between the projection of the initial magnetization on x-y plane and the x-axis. For noncollinear calculations only."},"lforcet":{"type":"boolean","description":"When starting a non collinear calculation using an existing density file from a collinear lsda calculation assumes previous density points in z direction and rotates it in the direction described by angle1 and angle2 variables for atomic type 1"},"constrained_magnetization":{"type":"string","enum":["none","total","atomic","total direction","atomic direction"],"default":"none","description":"Used to perform constrained calculations in magnetic systems."},"fixed_magnetization":{"type":"array","items":{"type":"number","default":0},"maxItems":3,"minItems":3},"lambda":{"type":"number","default":1,"description":"parameter used for constrained_magnetization calculations N.B.: if the scf calculation does not converge, try to reduce lambda to obtain convergence, then restart the run with a larger lambda"},"report":{"type":"integer","default":-1,"description":"determines when atomic magnetic moments are printed on output"},"lspinorb":{"type":"boolean","description":"if .TRUE. the noncollinear code can use a pseudopotential with spin-orbit."},"assume_isolated":{"type":"string","enum":["none","makov-payne","m-p","mp","martyna-tuckerman","m-t","mt","esm","2D"],"default":"none","description":"Used to perform calculation assuming the system to be isolated (a molecule or a cluster in a 3D supercell)"},"esm_bc":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"esm_w":{"type":"number","default":0,"description":"If assume_isolated = 'esm', determines the position offset [in a.u.] of the start of the effective screening region, measured relative to the cell edge. (ESM region begins at z = +/- [L_z/2 + esm_w] )."},"esm_efield":{"type":"number","default":0,"description":"If assume_isolated = 'esm' and esm_bc = 'bc2', gives the magnitude of the electric field [Ry/a.u.] to be applied between semi-infinite ESM electrodes."},"esm_nfit":{"type":"integer","default":4,"description":"If assume_isolated = 'esm', gives the number of z-grid points for the polynomial fit along the cell edge."},"lgcscf":{"type":"boolean","default":false,"description":"If .TRUE. perform a constant bias potential (constant-mu) calculation with Grand-Canonical SCF."},"gcscf_mu":{"type":"number","description":"The target Fermi energy (eV) of GC-SCF. One can start with appropriate total charge of the system by giving tot_charge"},"gcscf_conv_thr":{"type":"number","default":0.01,"description":"Convergence threshold of Fermi energy (eV) for GC-SCF."},"gcscf_beta":{"type":"number","default":0.05,"description":"Mixing factor for GC-SCF. Larger values are recommended, if systems with small DOS on Fermi surface as graphite."},"vdw_corr":{"type":"string","enum":["none","grimme-d2","Grimme-D2","DFT-D","dft-d","grimme-d3","Grimme-D3","DFT-D3","dft-d3","TS","ts","ts-vdw","ts-vdW","tkatchenko-scheffler","MBD","mbd","many-body-dispersion","mbd_vdw","XDM","xdm"],"default":"none","description":"Type of Van der Waals correction"},"london":{"type":"boolean","default":false,"description":"OBSOLESCENT, same as vdw_corr='DFT-D'"},"london_s6":{"type":"number","default":0.75,"description":"global scaling parameter for DFT-D. Default is good for PBE."},"london_c6":{"type":"number","description":"atomic C6 coefficient of each atom type"},"london_rvdw":{"type":"number","description":"atomic vdw radii of each atom type"},"london_rcut":{"type":"number","default":200,"description":"cutoff radius (a.u.) for dispersion interactions"},"dftd3_version":{"type":"integer","default":3,"minimum":2,"maximum":6,"description":"Version of Grimme implementation of Grimme-D3"},"dftd3_threebody":{"type":"boolean","default":true,"description":"Turn three-body terms in Grimme-D3 on. If .false. two-body contributions only are computed, using two-body parameters of Grimme-D3. If dftd3_version=2, three-body contribution is always disabled."},"ts_vdw_econv_thr":{"type":"number","default":0.000001,"description":"Optional: controls the convergence of the vdW energy (and forces). The default value is a safe choice, likely too safe, but you do not gain much in increasing it"},"ts_vdw_isolated":{"type":"boolean","default":false,"description":"Optional: set it to .TRUE. when computing the Tkatchenko-Scheffler vdW energy or the Many-Body dispersion (MBD) energy for an isolated (non-periodic) system."},"xdm":{"type":"boolean","default":false,"description":"OBSOLESCENT, same as vdw_corr='xdm'"},"xdm_a1":{"type":"number","default":0.6836,"description":"Damping function parameter a1 (adimensional)"},"xdm_a2":{"type":"number","default":1.5045,"description":"Damping function parameter a2 (angstrom)"},"space_group":{"type":"integer","default":0,"description":"The number of the space group of the crystal, as given in the International Tables of Crystallography A (ITA)"},"uniqueb":{"type":"boolean","default":false,"description":"Used only for monoclinic lattices"},"origin_choice":{"type":"integer","default":1,"description":"Used only for space groups that in the ITA allow the use of two different origins"},"rhombohedral":{"type":"boolean","default":true,"description":"Used only for rhombohedral space groups."},"zgate":{"type":"number","default":0.5,"description":"used only if gate = .TRUE."},"relaxz":{"type":"boolean","default":false,"description":"used only if gate = .TRUE."},"block":{"type":"boolean","default":false,"description":"used only if gate = .TRUE."},"block_1":{"type":"number","default":0.45,"description":"used only if gate = .TRUE. and block = .TRUE."},"block_2":{"type":"number","default":0.55,"description":"used only if gate = .TRUE. and block = .TRUE."},"block_height":{"type":"number","default":0.1,"description":"used only if gate = .TRUE. and block = .TRUE."},"nextffield":{"type":"integer","default":0,"description":"Number of activated external ionic force fields."}},"required":["ibrav","nat","ntyp","ecutwfc"]},"ELECTRONS":{"$schema":"http://json-schema.org/draft-07/schema#","title":"electrons schema","type":"object","additionalProperties":false,"properties":{"electron_maxstep":{"type":"integer","default":100,"description":"maximum number of iterations in a scf step. If exact exchange is active, this will affect the inner loops."},"exx_maxstep":{"type":"integer","default":100,"description":"maximum number of outer iterations in a scf calculation with exact exchange."},"scf_must_converge":{"type":"boolean","default":true,"description":"If .false. do not stop molecular dynamics or ionic relaxation when electron_maxstep is reached. Use with care."},"conv_thr":{"type":"number"},"adaptive_thr":{"type":"boolean","default":false,"description":"If .TRUE. this turns on the use of an adaptive conv_thr for the inner scf loops when using EXX."},"conv_thr_init":{"type":"number","description":"When adaptive_thr = .TRUE. this is the convergence threshold used for the first scf cycle."},"conv_thr_multi":{"type":"number","description":"When adaptive_thr = .TRUE. the convergence threshold for each scf cycle is given by: max( conv_thr, conv_thr_multi * dexx )"},"mixing_mode":{"type":"string","enum":["plain","TF","local-TF"],"default":"plain"},"mixing_beta":{"type":"number","description":"mixing factor for self-consistency"},"mixing_ndim":{"type":"integer","default":8,"description":"number of iterations used in mixing scheme"},"mixing_fixed_ns":{"type":"integer","default":0,"description":"For DFT+U : number of iterations with fixed ns ( ns is the atomic density appearing in the Hubbard term )."},"diagonalization":{"type":"string","enum":["david","cg","ppcg","paro","ParO","rmm-davidson","rmm-paro"],"default":"david"},"diago_thr_init":{"type":"number","description":"Convergence threshold (ethr) for iterative diagonalization (the check is on eigenvalue convergence)."},"diago_cg_maxiter":{"type":"integer","description":"For conjugate gradient diagonalization: max number of iterations"},"diago_ppcg_maxiter":{"type":"integer","description":"For ppcg diagonalization: max number of iterations"},"diago_david_ndim":{"type":"integer","default":2,"description":"For Davidson diagonalization: dimension of workspace (number of wavefunction packets, at least 2 needed)."},"diago_rmm_ndim":{"type":"integer","default":4,"description":"For RMM-DIIS diagonalization: dimension of workspace (number of wavefunction packets, at least 2 needed)."},"diago_rmm_conv":{"type":"boolean","default":false,"description":"If .TRUE., RMM-DIIS is performed up to converge. If .FALSE., RMM-DIIS is performed only once."},"diago_gs_nblock":{"type":"integer","default":16,"description":"For RMM-DIIS diagonalization: blocking size of Gram-Schmidt orthogonalization"},"diago_full_acc":{"type":"boolean","default":false,"description":"If .TRUE. all the empty states are diagonalized at the same level of accuracy of the occupied ones. Otherwise the empty states are diagonalized using a larger threshold (this should not affect total energy, forces, and other ground-state properties)."},"efield":{"type":"number","description":"Amplitude of the finite electric field (in Ry a.u.; 1 a.u. = 36.3609*10^10 V/m). Used only if lelfield==.TRUE. and if k-points (K_POINTS card) are not automatic."},"efield_cart":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"efield_phase":{"type":"string","enum":["read","write","none"],"default":"none"},"startingpot":{"type":"string","enum":["atomic","file"]},"startingwfc":{"type":"string","enum":["atomic","atomic+random","random","file"],"default":"atomic+random"},"tqr":{"type":"boolean","default":false,"description":"If .true., use a real-space algorithm for augmentation charges of ultrasoft pseudopotentials and PAWsets. Faster but numerically less accurate than the default G-space algorithm. Use with care and after testing!"},"real_space":{"type":"boolean","default":false,"description":"If .true., exploit real-space localization to compute matrix elements for nonlocal projectors. Faster and in principle better scaling than the default G-space algorithm, but numerically less accurate, may lead to some loss of translational invariance. Use with care and after testing!"}}},"IONS":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"ions schema","type":"object","additionalProperties":false,"oneOf":[{"type":"object","additionalProperties":false,"properties":{"ion_dynamics":{"type":"string","enum":["bfgs","damp","fire"],"default":"bfgs","description":"CASE: calculation == 'relax'"}}},{"type":"object","additionalProperties":false,"properties":{"ion_dynamics":{"type":"string","enum":["verlet","langevin","langevin-smc"],"default":"verlet","description":"CASE: calculation == 'md'"}}},{"type":"object","additionalProperties":false,"properties":{"ion_dynamics":{"type":"string","enum":["bfgs","damp"],"default":"bfgs","description":"CASE: calculation == 'vc-relax'"}}},{"type":"object","additionalProperties":false,"properties":{"ion_dynamics":{"type":"string","enum":["beeman"],"default":"beeman","description":"CASE: calculation == 'vc-md'"}}}],"properties":{"ion_positions":{"type":"string","enum":["default","from_input"],"default":"default"},"ion_velocities":{"type":"string","enum":["default","from_input"],"default":"default"},"pot_extrapolation":{"type":"string","enum":["none","atomic","first_order","second_order"],"default":"atomic","description":"Used to extrapolate the potential from preceding ionic steps."},"wfc_extrapolation":{"type":"string","enum":["none","first_order","second_order"],"default":"none","description":"Used to extrapolate the wavefunctions from preceding ionic steps."},"remove_rigid_rot":{"type":"boolean","default":false,"description":"This keyword is useful when simulating the dynamics and/or the thermodynamics of an isolated system. If set to true the total torque of the internal forces is set to zero by adding new forces that compensate the spurious interaction with the periodic images. This allows for the use of smaller supercells."},"ion_temperature":{"type":"string","enum":["rescaling","rescale-v","rescale-T","reduce-T","berendsen","andersen","svr","initial","not_controlled"],"default":"not_controlled"},"tempw":{"type":"number","description":"Starting temperature (Kelvin) in MD runs target temperature for most thermostats.","default":300},"tolp":{"type":"number","description":"Tolerance for velocity rescaling. Velocities are rescaled if the run-averaged and target temperature differ more than tolp.","default":100},"delta_t":{"type":"number","default":1},"nraise":{"type":"integer","default":1},"refold_pos":{"type":"boolean","default":false,"description":"This keyword applies only in the case of molecular dynamics or damped dynamics. If true the ions are refolded at each step into the supercell."},"upscale":{"type":"number","description":"Max reduction factor for conv_thr during structural optimization conv_thr is automatically reduced when the relaxation approaches convergence so that forces are still accurate, but conv_thr will not be reduced to less that conv_thr / upscale.","default":100},"bfgs_ndim":{"type":"integer","default":1,"description":"Number of old forces and displacements vectors used in the PULAY mixing of the residual vectors obtained on the basis of the inverse hessian matrix given by the BFGS algorithm."},"trust_radius_max":{"type":"number","description":"Maximum ionic displacement in the structural relaxation. (bfgs only)","default":0.8},"trust_radius_min":{"type":"number","description":"Minimum ionic displacement in the structural relaxation BFGS is reset when trust_radius < trust_radius_min. (bfgs only)","default":0.001},"trust_radius_ini":{"type":"number","description":"Initial ionic displacement in the structural relaxation. (bfgs only)","default":0.5},"w_1":{"type":"number","default":0.01},"w_2":{"type":"number","description":"Parameters used in line search based on the Wolfe conditions. (bfgs only)","default":0.5},"fire_alpha_init":{"type":"number","description":"Initial value of the alpha mixing factor in the FIRE minimization scheme; recommended values are between 0.1 and 0.3","default":0.2},"fire_falpha":{"type":"number","description":"Scaling of the alpha mixing parameter for steps with P > 0;","default":0.99},"fire_nmin":{"type":"integer","default":5,"description":"Minimum number of steps with P > 0 before increase of dt"},"fire_f_inc":{"type":"number","description":"Factor for increasing dt","default":1.1},"fire_f_dec":{"type":"number","description":"Factor for decreasing dt","default":0.5},"fire_dtmax":{"type":"number","description":"Determines the maximum value of dt in the FIRE minimization; dtmax = fire_dtmax*dt","default":10}}},{"type":"null"}]},"CELL":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"cell schema","type":"object","additionalProperties":false,"oneOf":[{"type":"object","additionalProperties":false,"properties":{"cell_dynamics":{"type":"string","enum":["none","sd","damp-pr","damp-w","bfgs"],"default":"bfgs","description":"CASE ( calculation == 'vc-relax' )"}}},{"type":"object","additionalProperties":false,"properties":{"cell_dynamics":{"type":"string","enum":["none","pr","w"],"description":"CASE ( calculation == 'vc-md' )"}}}],"properties":{"press":{"type":"number","description":"Target pressure [KBar] in a variable-cell md or relaxation run.","default":0},"wmass":{"type":"number","description":"Fictitious cell mass [amu] for variable-cell simulations (both 'vc-md' and 'vc-relax'). Default: 0.75*Tot_Mass/pi**2 for Parrinello-Rahman MD; 0.75*Tot_Mass/pi**2/Omega**(2/3) for Wentzcovitch MD"},"cell_factor":{"type":"number","description":"Used in the construction of the pseudopotential tables. It should exceed the maximum linear contraction of the cell during a simulation. Default: 2.0 for variable-cell calculations, 1.0 otherwise"},"press_conv_thr":{"type":"number","default":0.5,"description":"Convergence threshold on the pressure for variable cell relaxation ('vc-relax' : note that the other convergence thresholds for ionic relaxation apply as well)."},"cell_dofree":{"type":"string","enum":["all","ibrav","a","b","c","fixa","fixb","fixc","x","y","xy","xz","xyz","shape","volume","2Dxy","2Dshape","epitaxial_ab","epitaxial_ac","epitaxial_bc"],"default":"all","description":"Select which of the cell parameters should be moved"}}},{"type":"null"}]},"ATOMIC_SPECIES":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic species schema","type":"object","additionalProperties":false,"properties":{"values":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}}}},"ATOMIC_POSITIONS":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic positions schema","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1493","type":"object","additionalProperties":false,"properties":{"card_option":{"type":"string","enum":["alat","bohr","angstrom","crystal","crystal_sg"],"default":"alat"},"values":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}}},"K_POINTS":{"$schema":"http://json-schema.org/draft-07/schema#","title":"k points schema","type":"object","additionalProperties":false,"properties":{"card_option":{"type":"string","enum":["tpiba","automatic","crystal","gamma","tpiba_b","crystal_b","tpiba_c","crystal_c"]},"values":{"oneOf":[{"type":"array","description":"K_POINTS tpiba | crystal | tpiba_b | crystal_b | tpiba_c | crystal_c","items":{"type":"object","additionalProperties":false,"properties":{"nks":{"type":"integer","description":"Number of supplied special k-points."},"xk_x":{"type":"number"},"xk_y":{"type":"number"},"xk_z":{"type":"number"},"wk":{"type":"number"}}}},{"type":"object","description":"K_POINTS automatic","additionalProperties":false,"properties":{"nk1":{"type":"integer","description":"Number of supplied special k-points."},"nk2":{"type":"integer","description":"Number of supplied special k-points."},"nk3":{"type":"integer","description":"Number of supplied special k-points."},"sk1":{"type":"integer","description":"Number of supplied special k-points."},"sk2":{"type":"integer","description":"Number of supplied special k-points."},"sk3":{"type":"integer","description":"Number of supplied special k-points."}}},{"type":"null","description":"K_POINTS gamma"}]}}},"CELL_PARAMETERS":{"$schema":"http://json-schema.org/draft-07/schema#","title":"cell parameters schema","type":"object","additionalProperties":false,"properties":{"card_option":{"type":"string","enum":["alat","bohr","angstrom"],"description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"values":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},"HUBBARD":{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard schema","type":"object","additionalProperties":false,"properties":{"card_option":{"type":"string","enum":["atomic","ortho-atomic","norm-atomic","wf","pseudo"]},"values":{"oneOf":[{"description":"IF DFT+U","type":"array","items":{"oneOf":[{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1764","additionalProperties":false,"properties":{"U":{"type":"string","enum":["U"],"description":"string constant \"U\"; indicates the specs for the U parameter will be given"},"label":{"type":"string","description":"label of the atom (as defined in ATOMIC_SPECIES)"},"manifold":{"type":"string","description":"specs of the manifold (e.g., 3d, 2p...)"},"u_val":{"type":"number","description":"value of the U parameter (in eV)"}}},{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1784","additionalProperties":false,"properties":{"J0":{"type":"string","enum":["J0"],"description":"string constant \"J0\"; indicates the specs for the J0 parameter will be given"},"label":{"type":"string","description":"label of the atom (as defined in ATOMIC_SPECIES)"},"manifold":{"type":"string","description":"specs of the manifold (e.g., 3d, 2p...)"},"j0_val":{"type":"number","description":"value of the J0 parameter (in eV)"}}}]}},{"description":"IF DFT+U+J","type":"array","items":{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1817","additionalProperties":false,"properties":{"paramType":{"type":"string","enum":["U","J","B","E2","E3"],"description":"character describing the type of Hubbard parameter allowed values: U, J and either B (for d-orbitals) or E2 and E3 (for f-orbitals)"},"label":{"type":"string","description":"label of the atom (as defined in ATOMIC_SPECIES)"},"manifold":{"type":"string","description":"specs of the manifold (e.g., 3d, 2p...)"},"paramValue":{"type":"number","description":"value of the J0 parameter (in eV)"}}}},{"description":"IF DFT+U+V","type":"array","items":{"oneOf":[{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1847","additionalProperties":false,"properties":{"U":{"type":"string","enum":["U"],"description":"string constant \"U\"; indicates the specs for the U parameter will be given"},"label":{"type":"string","description":"label of the atom (as defined in ATOMIC_SPECIES)"},"manifold":{"type":"string","description":"specs of the manifold (e.g., 3d, 2p...)"},"u_val":{"type":"number","description":"value of the U parameter (in eV)"}}},{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1865","additionalProperties":false,"properties":{"J0":{"type":"string","enum":["J0"],"description":"string constant \"J0\"; indicates the specs for the J0 parameter will be given"},"label":{"type":"string","description":"label of the atom (as defined in ATOMIC_SPECIES)"},"manifold":{"type":"string","description":"specs of the manifold (e.g., 3d, 2p...)"},"j0_val":{"type":"number","description":"value of the J0 parameter (in eV)"}}},{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1884","additionalProperties":false,"properties":{"V":{"type":"string","enum":["V"],"description":"string constant \"V\"; indicates the specs for the V parameter will be given"},"label(I)":{"type":"string","description":"label of the atom I (as defined in ATOMIC_SPECIES)"},"manifold(I)":{"type":"string","description":"specs of the manifold for atom I (e.g., 3d, 2p...)"},"label(J)":{"type":"string","description":"label of the atom J (as defined in ATOMIC_SPECIES)"},"manifold(J)":{"type":"string","description":"specs of the manifold for atom J (e.g., 3d, 2p...)"},"I":{"type":"integer","description":"index of the atom I"},"J":{"type":"integer","description":"index of the atom J"},"v_val(I,J)":{"type":"number","description":"value of the V parameter for the atom pair I,J (in eV)"}}}]}}]}}}}},{"$id":"apse/materials/builders/slab/pymatgen/parameters","$schema":"http://json-schema.org/draft-07/schema#","title":"Pymatgen Slab Generator Parameters Schema","description":"Parameters for the Pymatgen slab generator. https://github.com/materialsproject/pymatgen/blob/585bb673c4aa222669c4b0d72ffeec3dbf092630/pymatgen/core/surface.py#L1187","type":"object","properties":{"min_vacuum_size":{"description":"Minimum size of the vacuum in layers or angstroms","type":["integer","number"],"minimum":0,"default":0},"in_unit_planes":{"description":"Whether to use unit planes for the vacuum and slab size","type":"boolean","default":true},"reorient_lattice":{"description":"Whether to reorient the lattice to have c vector along the z-axis","type":"boolean","default":true},"symmetrize":{"description":"Whether to symmetrize the slab","type":"boolean","default":true}}},{"$schema":"http://json-schema.org/draft-07/schema#","$id":"compute/nodes/base","description":"Cloud Node - base schema for all backend node types","type":"object","title":"cloud node schema","properties":{"hostname":{"type":"string","title":"Hostname","description":"Fully qualified domain name of the node"},"alias":{"type":"string","title":"Alias","description":"Human-readable display name for the node"},"timestamp":{"type":"number","description":"Unix timestamp of last heartbeat from the node"},"type":{"type":"string","enum":["cluster","gold","login"],"description":"Type of cloud node: cluster (compute), gold (billing), or login (SSH access)"},"isDefault":{"type":"boolean","description":"Whether this is the default node for its type"},"diskSpace":{"type":"array","description":"Disk space information for mounted filesystems","items":{"type":"object","properties":{"name":{"type":"string"},"size":{"type":"number"},"avail":{"type":"number"}}}}},"required":["hostname"]},{"$schema":"http://json-schema.org/draft-07/schema#","$id":"compute/nodes/cluster","description":"Cluster Node - extends cloud node with compute-specific properties","type":"object","title":"cluster node schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","description":"Cloud Node - base schema for all backend node types","type":"object","title":"cloud node schema","properties":{"hostname":{"type":"string","title":"Hostname","description":"Fully qualified domain name of the node"},"alias":{"type":"string","title":"Alias","description":"Human-readable display name for the node"},"timestamp":{"type":"number","description":"Unix timestamp of last heartbeat from the node"},"type":{"type":"string","enum":["cluster","gold","login"],"description":"Type of cloud node: cluster (compute), gold (billing), or login (SSH access)"},"isDefault":{"type":"boolean","description":"Whether this is the default node for its type"},"diskSpace":{"type":"array","description":"Disk space information for mounted filesystems","items":{"type":"object","properties":{"name":{"type":"string"},"size":{"type":"number"},"avail":{"type":"number"}}}}},"required":["hostname"]}],"properties":{"nodes":{"type":"array","description":"List of compute nodes in the cluster","items":{"type":"object"}},"queues":{"type":"array","title":"Queues","description":"Available job submission queues on this cluster","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Queue schema","type":"object","properties":{"name":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"maxPPN":{"description":"Maximum processors per node.","type":"integer"},"maxNodes":{"description":"Maximum number of nodes allowed for this queue.","type":"integer"},"availableNodes":{"description":"Number of nodes currently available.","type":"integer"},"currentNodes":{"description":"Number of nodes currently in use.","type":"integer"},"capacity":{"description":"Capacity status of the queue.","type":"string","enum":["FULL","DEGRADED","UNAVAILABLE"]},"displayName":{"type":"string","title":"Display name"}},"required":["name","maxPPN","maxNodes","availableNodes","currentNodes"]}}}},{"$id":"compute/queue","$schema":"http://json-schema.org/draft-07/schema#","title":"Queue schema","type":"object","properties":{"name":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"maxPPN":{"description":"Maximum processors per node.","type":"integer"},"maxNodes":{"description":"Maximum number of nodes allowed for this queue.","type":"integer"},"availableNodes":{"description":"Number of nodes currently available.","type":"integer"},"currentNodes":{"description":"Number of nodes currently in use.","type":"integer"},"capacity":{"description":"Capacity status of the queue.","type":"string","enum":["FULL","DEGRADED","UNAVAILABLE"]},"displayName":{"type":"string","title":"Display name"}},"required":["name","maxPPN","maxNodes","availableNodes","currentNodes"]},{"$id":"context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"context provider schema","type":"object","properties":{"name":{"type":"string","enum":["PlanewaveCutoffDataManager","KGridFormDataManager","QGridFormDataManager","IGridFormDataManager","QPathFormDataManager","IPathFormDataManager","KPathFormDataManager","ExplicitKPathFormDataManager","ExplicitKPath2PIBAFormDataManager","HubbardJContextManager","HubbardUContextManager","HubbardVContextManager","HubbardContextManagerLegacy","NEBFormDataManager","BoundaryConditionsFormDataManager","MLSettingsDataManager","MLTrainTestSplitDataManager","IonDynamicsContextProvider","CollinearMagnetizationDataManager","NonCollinearMagnetizationDataManager","QEPWXInputDataManager","QENEBInputDataManager","VASPInputDataManager","VASPNEBInputDataManager","NWChemInputDataManager"],"tsEnumNames":["PlanewaveCutoffDataManager","KGridFormDataManager","QGridFormDataManager","IGridFormDataManager","QPathFormDataManager","IPathFormDataManager","KPathFormDataManager","ExplicitKPathFormDataManager","ExplicitKPath2PIBAFormDataManager","HubbardJContextManager","HubbardUContextManager","HubbardVContextManager","HubbardContextManagerLegacy","NEBFormDataManager","BoundaryConditionsFormDataManager","MLSettingsDataManager","MLTrainTestSplitDataManager","IonDynamicsContextProvider","CollinearMagnetizationDataManager","NonCollinearMagnetizationDataManager","QEPWXInputDataManager","QENEBInputDataManager","VASPInputDataManager","VASPNEBInputDataManager","NWChemInputDataManager"]},"domain":{"description":"domain of the context provider","type":"string"},"entityName":{"description":"entity name associated with the context provider","type":"string"},"data":{"description":"data object for the context provider","type":"object"},"extraData":{"description":"additional data object for the context provider","type":"object"},"isEdited":{"description":"flag indicating if the context provider has been edited","type":"boolean"},"context":{"description":"context object for the context provider","type":"object"}},"additionalProperties":true,"required":["name"]},{"$id":"context-providers-directory/boundary-conditions-data-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},{"$id":"context-providers-directory/by-application/nwchem-total-energy-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$id":"context-providers-directory/by-application/qe-neb-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$id":"context-providers-directory/by-application/qe-pwx-base-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"$id":"context-providers-directory/by-application/qe-pwx-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$id":"context-providers-directory/by-application/vasp-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$id":"context-providers-directory/by-application/vasp-neb-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]},{"$id":"context-providers-directory/collinear-magnetization-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},{"$id":"context-providers-directory/enum","definitions":{"ContextProviderNameEnum":{"type":"string","enum":["PlanewaveCutoffDataManager","KGridFormDataManager","QGridFormDataManager","IGridFormDataManager","QPathFormDataManager","IPathFormDataManager","KPathFormDataManager","ExplicitKPathFormDataManager","ExplicitKPath2PIBAFormDataManager","HubbardJContextManager","HubbardUContextManager","HubbardVContextManager","HubbardContextManagerLegacy","NEBFormDataManager","BoundaryConditionsFormDataManager","MLSettingsDataManager","MLTrainTestSplitDataManager","IonDynamicsContextProvider","CollinearMagnetizationDataManager","NonCollinearMagnetizationDataManager","QEPWXInputDataManager","QENEBInputDataManager","VASPInputDataManager","VASPNEBInputDataManager","NWChemInputDataManager"],"tsEnumNames":["PlanewaveCutoffDataManager","KGridFormDataManager","QGridFormDataManager","IGridFormDataManager","QPathFormDataManager","IPathFormDataManager","KPathFormDataManager","ExplicitKPathFormDataManager","ExplicitKPath2PIBAFormDataManager","HubbardJContextManager","HubbardUContextManager","HubbardVContextManager","HubbardContextManagerLegacy","NEBFormDataManager","BoundaryConditionsFormDataManager","MLSettingsDataManager","MLTrainTestSplitDataManager","IonDynamicsContextProvider","CollinearMagnetizationDataManager","NonCollinearMagnetizationDataManager","QEPWXInputDataManager","QENEBInputDataManager","VASPInputDataManager","VASPNEBInputDataManager","NWChemInputDataManager"]}}},{"$id":"context-providers-directory/hubbard-j-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}},{"$id":"context-providers-directory/hubbard-legacy-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},{"$id":"context-providers-directory/hubbard-u-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},{"$id":"context-providers-directory/hubbard-v-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}},{"$id":"context-providers-directory/ion-dynamics-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}},{"$id":"context-providers-directory/ml-settings-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}},{"$id":"context-providers-directory/ml-train-test-split-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}},{"$id":"context-providers-directory/neb-data-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}},{"$id":"context-providers-directory/non-collinear-magnetization-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},{"$id":"context-providers-directory/planewave-cutoffs-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}},{"$id":"context-providers-directory/points-grid-data-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},{"$id":"context-providers-directory/points-path-data-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},{"$id":"context-providers-directory/points-path-data-provider-rendering","$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Rendering Schema","description":"Path in reciprocal space including derived Cartesian/fractional coordinates for template rendering. Not persisted on the context item.","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"},"coordinates":{"type":"array","items":{"type":"number","minItems":3,"maxItems":3}}},"required":["point","steps","coordinates"]}},{"$id":"core/abstract/2d-data","$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]},{"$id":"core/abstract/2d-plot","$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]},{"$id":"core/abstract/3d-grid","$schema":"http://json-schema.org/draft-07/schema#","title":"3 dimensional grid schema","type":"object","properties":{"dimensions":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"shifts":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}},"required":["dimensions","shifts"]},{"$id":"core/abstract/coordinate-2d","$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 2d schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},{"$id":"core/abstract/coordinate-3d","$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},{"$id":"core/abstract/matrix-3x3","$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},{"$id":"core/abstract/vector-2d","$schema":"http://json-schema.org/draft-07/schema#","title":"vector 2d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2}]},{"$id":"core/abstract/vector-3d","$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},{"$id":"core/abstract/vector-boolean-3d","$schema":"http://json-schema.org/draft-07/schema#","title":"vector boolean 3d schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 boolean elements schema","type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}]},{"$id":"core/primitive/1d-data-series","$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}},{"$id":"core/primitive/array-of-2-numbers","$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},{"$id":"core/primitive/array-of-3-booleans","$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 boolean elements schema","type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3},{"$id":"core/primitive/array-of-3-integers","$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3},{"$id":"core/primitive/array-of-3-numbers","$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"$id":"core/primitive/array-of-ids","$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}},{"$id":"core/primitive/array-of-strings","$schema":"http://json-schema.org/draft-07/schema#","title":"array of strings","description":"array of strings, e.g. metadata tags","type":"array","items":{"type":"string","uniqueItems":true}},{"$id":"core/primitive/axis","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},{"$id":"core/primitive/axis-3d-names-enum","$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},{"$id":"core/primitive/group-info","$schema":"http://json-schema.org/draft-07/schema#","title":"Group info schema for nodes in a graph","type":"object","properties":{"groupName":{"description":"Human-readable name of group of nodes","type":"string"},"groupId":{"description":"Unique identifier of the group a node belongs to","type":"string"}}},{"$id":"core/primitive/integer-one-or-zero","$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},{"$id":"core/primitive/integer-positive-single-digit","$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9},{"$id":"core/primitive/linked-list/base-node","$schema":"http://json-schema.org/draft-07/schema#","title":"basic node schema (linked list)","type":"object","allOf":[{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"}},"definitions":{"flowchart-id":{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}}},{"$id":"core/primitive/linked-list/named-node","$schema":"http://json-schema.org/draft-07/schema#","title":"Named node schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"basic node schema (linked list)","type":"object","allOf":[{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"}},"definitions":{"flowchart-id":{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$id":"core/primitive/linked-list/named-node-in-group","$schema":"http://json-schema.org/draft-07/schema#","title":"Named node in group schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named node schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"basic node schema (linked list)","type":"object","allOf":[{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"}},"definitions":{"flowchart-id":{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Group info schema for nodes in a graph","type":"object","properties":{"groupName":{"description":"Human-readable name of group of nodes","type":"string"},"groupId":{"description":"Unique identifier of the group a node belongs to","type":"string"}}}]},{"$id":"core/primitive/linked-list/node-with-type","$schema":"http://json-schema.org/draft-07/schema#","title":"Typed node schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"basic node schema (linked list)","type":"object","allOf":[{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"}},"definitions":{"flowchart-id":{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}}}],"properties":{"type":{"type":"string"}}},{"$id":"core/primitive/linked-list","$schema":"http://json-schema.org/draft-07/schema#","title":"linked list schema","type":"array","items":{"type":"object","anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"basic node schema (linked list)","type":"object","allOf":[{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"}},"definitions":{"flowchart-id":{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named node schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"basic node schema (linked list)","type":"object","allOf":[{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"}},"definitions":{"flowchart-id":{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named node in group schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named node schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"basic node schema (linked list)","type":"object","allOf":[{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"}},"definitions":{"flowchart-id":{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Group info schema for nodes in a graph","type":"object","properties":{"groupName":{"description":"Human-readable name of group of nodes","type":"string"},"groupId":{"description":"Unique identifier of the group a node belongs to","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Typed node schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"basic node schema (linked list)","type":"object","allOf":[{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"}},"definitions":{"flowchart-id":{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}}}],"properties":{"type":{"type":"string"}}}],"uniqueItems":true}},{"$id":"core/primitive/object-with-id","$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]},{"$id":"core/primitive/object-with-id-and-value","$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]},{"$id":"core/primitive/scalar","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]},{"$id":"core/primitive/slugified-entry","$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"$id":"core/primitive/slugified-entry-or-slug","$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},{"$id":"core/primitive/string","$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]},{"$id":"core/reference/exabyte","$schema":"http://json-schema.org/draft-07/schema#","type":"object","properties":{"jobId":{"description":"Job's identity","type":"string"},"unitId":{"description":"Id of the unit that extracted the result","type":"string"}},"required":["jobId","unitId"]},{"$id":"core/reference/experiment/condition","$schema":"http://json-schema.org/draft-07/schema#","title":"condition schema","type":"object","properties":{"units":{"description":"condition unit","type":"string"},"scalar":{"description":"array of condition values","type":"array","items":{"type":"object","properties":{"value":{"type":"string"}}}},"name":{"description":"human-readable name of the condition","type":"string"}},"required":["name"]},{"$id":"core/reference/experiment/location","$schema":"http://json-schema.org/draft-07/schema#","title":"location schema","type":"object","properties":{"latitude":{"description":"location latitude","type":"number"},"longitude":{"description":"location longitude","type":"number"}},"required":["latitude","longitude"]},{"$id":"core/reference/experiment","$schema":"http://json-schema.org/draft-07/schema#","title":"info for characteristic obtained by experiment","type":"object","properties":{"type":{"enum":["experiment"]},"authors":{"description":"experiment authors","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"title":{"type":"string","description":"experiment title"},"method":{"type":"string","description":"method used in experiment"},"conditions":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition schema","type":"object","properties":{"units":{"description":"condition unit","type":"string"},"scalar":{"description":"array of condition values","type":"array","items":{"type":"object","properties":{"value":{"type":"string"}}}},"name":{"description":"human-readable name of the condition","type":"string"}},"required":["name"]}},"location":{"$schema":"http://json-schema.org/draft-07/schema#","title":"location schema","type":"object","properties":{"latitude":{"description":"location latitude","type":"number"},"longitude":{"description":"location longitude","type":"number"}},"required":["latitude","longitude"]},"timestamp":{"description":"epoch time.","type":"number"},"note":{"description":"Note about experiment","type":"string"},"references":{"type":"array","description":"references to literature articles","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}}},"required":["conditions","authors","title","method","timestamp"]},{"$id":"core/reference/literature/name","$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]},{"$id":"core/reference/literature/pages","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]},{"$id":"core/reference/literature","$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}},{"$id":"core/reference/modeling/exabyte","$schema":"http://json-schema.org/draft-07/schema#","title":"info for characteristic obtained by exabyte calculation","type":"object","properties":{"type":{"enum":["exabyte"]},"title":{"description":"Human-readable title of the job","type":"string","maxLength":300},"_id":{"description":"job identifier","type":"string"},"owner":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}},"required":["title","_id","owner"]},{"$id":"core/reference/modeling","$schema":"http://json-schema.org/draft-07/schema#","title":"info for property obtained by modeling, only supports exabyte-originated data atm, but easily extendable","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"info for characteristic obtained by exabyte calculation","type":"object","properties":{"type":{"enum":["exabyte"]},"title":{"description":"Human-readable title of the job","type":"string","maxLength":300},"_id":{"description":"job identifier","type":"string"},"owner":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}},"required":["title","_id","owner"]}]},{"$id":"core/reference","$schema":"http://json-schema.org/draft-07/schema#","title":"reference schema (using `anyOf` instead of `oneOf` below b/c current reference schemas overlap)","anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"info for property obtained by modeling, only supports exabyte-originated data atm, but easily extendable","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"info for characteristic obtained by exabyte calculation","type":"object","properties":{"type":{"enum":["exabyte"]},"title":{"description":"Human-readable title of the job","type":"string","maxLength":300},"_id":{"description":"job identifier","type":"string"},"owner":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}},"required":["title","_id","owner"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"info for characteristic obtained by experiment","type":"object","properties":{"type":{"enum":["experiment"]},"authors":{"description":"experiment authors","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"title":{"type":"string","description":"experiment title"},"method":{"type":"string","description":"method used in experiment"},"conditions":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition schema","type":"object","properties":{"units":{"description":"condition unit","type":"string"},"scalar":{"description":"array of condition values","type":"array","items":{"type":"object","properties":{"value":{"type":"string"}}}},"name":{"description":"human-readable name of the condition","type":"string"}},"required":["name"]}},"location":{"$schema":"http://json-schema.org/draft-07/schema#","title":"location schema","type":"object","properties":{"latitude":{"description":"location latitude","type":"number"},"longitude":{"description":"location longitude","type":"number"}},"required":["latitude","longitude"]},"timestamp":{"description":"epoch time.","type":"number"},"note":{"description":"Note about experiment","type":"string"},"references":{"type":"array","description":"references to literature articles","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}}},"required":["conditions","authors","title","method","timestamp"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}]},{"$id":"core/reusable/atomic-data/per-orbital","$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital","description":"Atomic properties per orbital e.g., Hubbard U parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"}}},{"$id":"core/reusable/atomic-data/per-orbital-pair","$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair","description":"Atomic properties per orbital pair e.g., Hubbard V parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"id2":{"type":"integer","description":"Site number or index in the lattice of second site"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"atomicSpecies2":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co2, O"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalName2":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"distance":{"type":"number","description":"Distance between two sites in Bohr."}}},{"$id":"core/reusable/atomic-data/value-number","$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data numeric properties","description":"Numeric value specific to atomic data","type":"object","properties":{"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}},{"$id":"core/reusable/atomic-data/value-string","$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data string properties","description":"String value specific to atomic data","type":"object","properties":{"value":{"type":"string","description":"String value specific to atomic data"}}},{"$id":"core/reusable/atomic-data-per-orbital-numeric","$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital numeric","description":"Atomic properties per orbital pair with numeric value e.g., Hubbard V parameters.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital","description":"Atomic properties per orbital e.g., Hubbard U parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data numeric properties","description":"Numeric value specific to atomic data","type":"object","properties":{"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}]},{"$id":"core/reusable/atomic-data-per-orbital-pair-numeric","$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair numeric","description":"Atomic properties per orbital pair with numeric value e.g., Hubbard V parameters.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair","description":"Atomic properties per orbital pair e.g., Hubbard V parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"id2":{"type":"integer","description":"Site number or index in the lattice of second site"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"atomicSpecies2":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co2, O"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalName2":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"distance":{"type":"number","description":"Distance between two sites in Bohr."}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data numeric properties","description":"Numeric value specific to atomic data","type":"object","properties":{"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}]},{"$id":"core/reusable/atomic-orbital","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic orbital schema","type":"object","properties":{"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalIndex":{"type":"integer","minimum":1},"principalNumber":{"type":"integer","minimum":1,"maximum":7},"angularMomentum":{"type":"integer","minimum":0,"maximum":3},"occupation":{"type":"number","description":"Shell occupation","minimum":0,"maximum":14}}},{"$id":"core/reusable/atomic-scalars","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic scalars vectors schema","type":"array","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}}],"items":{"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}}}},{"$id":"core/reusable/atomic-string","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}},{"$id":"core/reusable/atomic-vector","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vector schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}},{"$id":"core/reusable/atomic-vectors","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vectors schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vector schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},{"$id":"core/reusable/band-gap","$schema":"http://json-schema.org/draft-07/schema#","title":"band gap schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"kpointConduction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"kpoint schema","description":"A k-point is a point in reciprocal space of a crystal.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}]},"kpointValence":{"$schema":"http://json-schema.org/draft-07/schema#","title":"kpoint schema","description":"A k-point is a point in reciprocal space of a crystal.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}]},"eigenvalueConduction":{"description":"eigenvalue at k-point in conduction band","type":"number"},"eigenvalueValence":{"description":"eigenvalue at k-point in valence band","type":"number"},"spin":{"type":"number"},"type":{"type":"string","enum":["direct","indirect"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}},"required":["type"]},{"$id":"core/reusable/categories","$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},{"$id":"core/reusable/category-path","$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"},{"$id":"core/reusable/coordinate-conditions/base","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]},{"$id":"core/reusable/coordinate-conditions/box","$schema":"http://json-schema.org/draft-07/schema#","title":"Box Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"box","default":"box"},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["min_coordinate","max_coordinate"]},{"$id":"core/reusable/coordinate-conditions/cylinder","$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"cylinder","default":"cylinder"},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["radius","min_z","max_z"]},{"$id":"core/reusable/coordinate-conditions/enum","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},{"$id":"core/reusable/coordinate-conditions/index","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Conditions Schema","description":"Combined schema for all coordinate condition types","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Box Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"box","default":"box"},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["min_coordinate","max_coordinate"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"sphere","default":"sphere"},"radius":{"type":"number","minimum":0}},"required":["radius"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"cylinder","default":"cylinder"},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["radius","min_z","max_z"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"triangular_prism","default":"triangular_prism"},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["position_on_surface_1","position_on_surface_2","position_on_surface_3","min_z","max_z"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"plane","default":"plane"},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["plane_normal","plane_point_coordinate"]}]},{"$id":"core/reusable/coordinate-conditions/plane","$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"plane","default":"plane"},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["plane_normal","plane_point_coordinate"]},{"$id":"core/reusable/coordinate-conditions/sphere","$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"sphere","default":"sphere"},"radius":{"type":"number","minimum":0}},"required":["radius"]},{"$id":"core/reusable/coordinate-conditions/triangular-prism","$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"triangular_prism","default":"triangular_prism"},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["position_on_surface_1","position_on_surface_2","position_on_surface_3","min_z","max_z"]},{"$id":"core/reusable/dielectric-tensor-component","$schema":"http://json-schema.org/draft-07/schema#","title":"Dielectric Tensor","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"","description":"Schema for a function of frequency yielding a nx3 matrix","type":"object","properties":{"frequencies":{"description":"Frequencies","type":"array","items":{"type":"number"}},"components":{"description":"Matrix with 3 columns, e.g. x, y, z","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}],"properties":{"part":{"description":"Real or imaginary part of the dielectric tensor component","type":"string","enum":["real","imaginary"]},"spin":{"type":"number"}},"required":["part","frequencies","components"]},{"$id":"core/reusable/energy","$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]},{"$id":"core/reusable/energy-accuracy-levels","$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for energy value with unit corresponding to a specific accuracy level, e.g., used for suggested wavefunction and charge density cutoffs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for scalar values with accuracy levels","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]}},"required":["accuracy_level"]}],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]}},"required":["unit"]},{"$id":"core/reusable/file-metadata","$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}},{"$id":"core/reusable/formation-energy-contribution","$schema":"http://json-schema.org/draft-07/schema#","title":"Formation energy contribution schema","description":"Total energy contribution of one material used in formation energy calculation.","type":"object","properties":{"formula":{"description":"formula or label for the material used in the formation energy calculation","type":"string"},"n_atoms":{"description":"number of atoms in the material","type":"integer"},"is_elemental":{"description":"whether the material is an elemental reference","type":"boolean"},"total_energy":{"description":"total energy of the material","type":"number"},"total_energy_per_atom":{"description":"total energy per atom of the material","type":"number"},"precision_value":{"description":"precision value for the total energy property","type":"number","default":-1},"precision_metric":{"description":"metric used to report total energy precision","type":"string","enum":["unknown","KPPRA","spacing"],"default":"unknown"}},"required":["formula","n_atoms","is_elemental","total_energy","total_energy_per_atom","precision_metric","precision_value"]},{"$id":"core/reusable/frequency-function-matrix","$schema":"http://json-schema.org/draft-07/schema#","title":"","description":"Schema for a function of frequency yielding a nx3 matrix","type":"object","properties":{"frequencies":{"description":"Frequencies","type":"array","items":{"type":"number"}},"components":{"description":"Matrix with 3 columns, e.g. x, y, z","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}},{"$id":"core/reusable/kpoint","$schema":"http://json-schema.org/draft-07/schema#","title":"kpoint schema","description":"A k-point is a point in reciprocal space of a crystal.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}]},{"$id":"core/reusable/object-storage-container-data","$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},{"$id":"core/reusable/scalar-with-accuracy-levels","$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for scalar values with accuracy levels","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]}},"required":["accuracy_level"]},{"$id":"definitions/chemical-elements","title":"Chemical Element Symbols","periodic_table":{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},"extra":{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]},"all":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}},{"$id":"definitions/constants","title":"fundamental constants","description":"Fundamental physical constants, 2022 NIST CODATA (https://doi.org/10.48550/arXiv.2409.03787)","type":"object","properties":{"c":{"description":"speed of light in vacuum, \"units\": \"m/s\"","type":"number","default":299792458},"h":{"description":"Planck constant, \"units\": \"J s\"","type":"number","default":6.62607015e-34},"e":{"description":"elementary charge, \"units\": \"C\"","type":"number","default":1.602176634e-19},"G":{"description":"Newtonian constant of gravitation, \"units\": \"m^3/kg/s^2\"","type":"number","default":6.6743015e-11},"me":{"description":"electron mass \"units\": \"kg\"","type":"number","default":9.109383713928e-31},"eps0":{"description":"vacuum permittivity, \"units\": \"F/m\"","type":"number","default":8.854187818814e-12},"mu0":{"description":"vacuum permeability, \"units\": \"N/A^2\"","type":"number","default":0.000001256637061272}},"required":["c","h","e","G","me","eps0","mu0"]},{"$id":"definitions/material","title":"Materials Definitions","form_factor":{"description":"Form factor of the material","enum":["bulk","slab","monolayer","nanoribbon"]},"dimensionality":{"description":"Dimensionality of the material","enum":["zero-dimensional","one-dimensional","two-dimensional","three-dimensional"]}},{"$id":"definitions/units","title":"all units definitions","angle":{"enum":["degree","radian"],"default":"degree"},"coordinates_basis":{"enum":["crystal","cartesian"],"default":"crystal"},"coordinates_lattice_reciprocal":{"enum":["crystal","cartesian"],"default":"crystal"},"length":{"enum":["km","m","cm","mm","um","nm","angstrom","a.u.","bohr","pm"]},"length_atomic":{"enum":["angstrom","bohr"],"default":"angstrom"},"energy":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},"energy_atomic":{"enum":["eV","hartree","rydberg"],"default":"eV"},"surface_energy":{"enum":["eV/A^2"]},"force":{"enum":["eV/bohr","eV/angstrom","Ry/a.u.","newton","kg*m/s^2","eV/a.u."]},"volume":{"enum":["cm^3","angstrom^3"]},"numberDensity":{"enum":["1/angstrom^3"]},"density":{"enum":["g/cm^3"]},"frequency":{"enum":["cm-1","THz","meV"]},"pressure":{"enum":["kbar","pa"]},"phononDOS":{"enum":["states/cm-1","states/THz","states/meV"]},"electronicDOS":{"enum":["states/unitcell"]},"magnetic":{"enum":["uB"]},"chargeDensity":{"enum":["e/A"]},"spectralIntensity":{"enum":["(debye/angstrom)^2","km/mol","m/mol","a.u."]}},{"$id":"element","$schema":"http://json-schema.org/draft-07/schema#","title":"element schema","type":"object","properties":{"symbol":{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},"properties":{"type":"array","description":"list of elemental properties","items":{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic radius","description":"atomic radius","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["atomic_radius"]},"units":{"enum":["km","m","cm","mm","um","nm","angstrom","a.u.","bohr","pm"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"electronegativity","description":"electronegativity for the element (Pauling scale)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["electronegativity"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ionization potential elemental property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["ionization_potential"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}},"required":["name","units"]}]}}}},{"$id":"in-memory-entity/base","$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$id":"in-memory-entity/defaultable","$schema":"http://json-schema.org/draft-07/schema#","title":"Defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$id":"in-memory-entity/has-consistency-check-has-metadata-named-defaultable","$schema":"http://json-schema.org/draft-07/schema#","title":"has consistency check has metadata named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable has metadata in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Has consistency check schema","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}}}}]},{"$id":"in-memory-entity/named","$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$id":"in-memory-entity/named-defaultable","$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$id":"in-memory-entity/named-defaultable-has-metadata","$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable has metadata in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}}]},{"$id":"in-memory-entity/named-defaultable-runtime-items","$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable runtime items in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema (pre-/post-processors, monitors, results","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"additionalProperties":true,"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"RuntimeItemString","description":"name of runtime item in shortened notation","type":"string"}]}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"additionalProperties":true,"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"RuntimeItemString","description":"name of runtime item in shortened notation","type":"string"}]}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"additionalProperties":true,"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"RuntimeItemString","description":"name of runtime item in shortened notation","type":"string"}]}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"additionalProperties":true,"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"RuntimeItemString","description":"name of runtime item in shortened notation","type":"string"}]}}}}]},{"$id":"job/base","$schema":"http://json-schema.org/draft-07/schema#","title":"job base schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable has metadata in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Compute Property Schema","type":"object","properties":{"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]}},"required":["compute"]}],"properties":{"rmsId":{"description":"Identity used to track jobs originated from command-line","type":"string"},"status":{"description":"job status","enum":["pre-submission","queued","submitted","active","finished","terminate-queued","terminated","error","deleted","timeout"]},"startTime":{"description":"Approximate start time of the job. e.g. within 10 min","type":"string"},"workDir":{"description":"The path to the working directory of this job, when the job originates from command-line","type":"string"},"_project":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]},"_material":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]},"parent":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]},"runtimeContext":{"description":"Context variables that the job will have access to at runtime","type":"object"},"scopeTrack":{"description":"history of the workflow scope on each update","type":"array","items":{"type":"object","properties":{"repetition":{"type":"number"},"scope":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow scope schema","type":"object","properties":{"global":{"type":"object","additionalProperties":true},"local":{"type":"object","additionalProperties":true}},"required":["global","local"]}}}}},"required":["status","_project"]},{"$id":"job/compute","$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]},{"$id":"job/compute-property","$schema":"http://json-schema.org/draft-07/schema#","title":"Compute Property Schema","type":"object","properties":{"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]}},"required":["compute"]},{"$id":"job","$schema":"http://json-schema.org/draft-07/schema#","title":"job schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"job base schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable has metadata in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Compute Property Schema","type":"object","properties":{"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]}},"required":["compute"]}],"properties":{"rmsId":{"description":"Identity used to track jobs originated from command-line","type":"string"},"status":{"description":"job status","enum":["pre-submission","queued","submitted","active","finished","terminate-queued","terminated","error","deleted","timeout"]},"startTime":{"description":"Approximate start time of the job. e.g. within 10 min","type":"string"},"workDir":{"description":"The path to the working directory of this job, when the job originates from command-line","type":"string"},"_project":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]},"_material":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]},"parent":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]},"runtimeContext":{"description":"Context variables that the job will have access to at runtime","type":"object"},"scopeTrack":{"description":"history of the workflow scope on each update","type":"array","items":{"type":"object","properties":{"repetition":{"type":"number"},"scope":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow scope schema","type":"object","properties":{"global":{"type":"object","additionalProperties":true},"local":{"type":"object","additionalProperties":true}},"required":["global","local"]}}}}},"required":["status","_project"]}],"properties":{"workflow":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"base workflow schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this workflow (TODO: add enums)","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"isUsingDataset":{"description":"Whether to use the dataset tab in the job designer. Mutually exclusive with using the materials tab.","type":"boolean"},"isMultiMaterial":{"description":"Defines whether the workflow is for a multi-material simulation","type":"boolean"},"subworkflows":{"description":"Array of subworkflows. Subworkflow can be an instance of workflow to allow for nesting","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Mixin Schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this subworkflow","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]},"units":{"description":"Contains the Units of the subworkflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow subworkflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","properties":{"type":{"const":"io"},"subtype":{"enum":["input","output","dataFrame"]},"source":{"enum":["api","object_storage"]},"input":{"type":"array","items":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]}],"discriminator":{"propertyName":"type"}}}},"required":["subtype","source","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","properties":{"type":{"const":"condition"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"statement":{"description":"Condition statement. e.g. 'abs(x-total_energy) < 1e-5'","type":"string"},"then":{"description":"Flowchart ID reference for `then` part of the condition.","type":"string"},"else":{"description":"Flowchart ID reference for `else` part of the condition.","type":"string"},"maxOccurrences":{"description":"Maximum occurrence of the condition, usable for loops.","type":"integer"},"throwException":{"description":"Throw exception on reaching to maximum occurence.","type":"boolean"}},"required":["input","statement","then","else","maxOccurrences"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","properties":{"type":{"const":"assertion"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}},"required":["name","statement"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"scope schema","type":"object","properties":{"scope":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","properties":{"type":{"const":"assignment"},"input":{"description":"Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"operand":{"description":"Name of the global variable. e.g. 'x'","type":"string"},"value":{"description":"Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}},"required":["name","operand","value"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"model":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Any model schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"lda"},"functional":{"enum":["pz","pw","vwn","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"gga"},"functional":{"enum":["pbe","pbesol","pw91","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"hybrid"},"functional":{"enum":["b3lyp","hse06","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML model schema","type":"object","properties":{"type":{"enum":["ml"]},"subtype":{"enum":["re"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unknown model schema","type":"object","properties":{"type":{"enum":["unknown"]},"subtype":{"enum":["unknown"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}},"required":["model","properties","application","units"]}]}},"units":{"description":"Contains the Units of the Workflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit mixin schema","type":"object","properties":{"type":{"const":"map"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","properties":{"target":{"description":"Name of the target variable to substitute using the values below. e.g. K_POINTS","type":"string"},"scope":{"description":"Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.","type":"string"},"name":{"description":"Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.","type":"string"},"values":{"description":"Sequence of values for the target Jinja variable. Optional if `scope` and `name` are given. This can be used for map-reduce type parallel execution","type":"array","items":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"object"}]}},"useValues":{"type":"boolean"}},"required":["target"]}},"required":["input","workflowId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit mixin schema","type":"object","properties":{"type":{"const":"reduce"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","properties":{"operation":{"description":"reduce operation, e.g. aggregate","type":"string"},"arguments":{"description":"arguments which are passed to reduce operation function","type":"array","items":{"type":"string"}}},"required":["operation","arguments"]}}},"required":["mapFlowchartId","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"application":{"description":"information about the main application used for workflow categorization by application in standata.","type":"object","properties":{"name":{"description":"name of the application","type":"string"}}},"tags":{"description":"tags for the workflow","type":"array","items":{"type":"string"}}},"required":["properties","units","subworkflows"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Description schema","type":"object","properties":{"description":{"description":"entity description","type":"string"},"descriptionObject":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"workflows":{"description":"Array of workflows with the same schema as the current one.","type":"array","items":{"type":"object"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]}},"required":["workflows"]}},"required":["workflow"]},{"$id":"material/consistency-check","$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}},{"$id":"material/conventional","$schema":"http://json-schema.org/draft-07/schema#","title":"material conventional schema","type":"object","properties":{"conventional":{"type":"object"}}},{"$id":"material/material-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$id":"material/metadata/boundary-conditions","$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$id":"material/metadata/bulk-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true},{"$id":"material/metadata/slab-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$id":"material/metadata","$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]},{"$id":"material","$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]},{"$id":"material-enhanced","$schema":"http://json-schema.org/draft-07/schema#","title":"material enhanced schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]},{"properties":{"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis constrained schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},{"properties":{"constraints":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraints schema","description":"atomic constraints schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraint schema","description":"constraint of atoms by ids, used to constraint the position etc.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector boolean 3d schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 boolean elements schema","type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}]}}}}},"required":["constraints"]}]}}}]},{"$id":"material-enhanced-hashed","$schema":"http://json-schema.org/draft-07/schema#","title":"material enhanced hashed schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material enhanced schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]},{"properties":{"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis constrained schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},{"properties":{"constraints":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraints schema","description":"atomic constraints schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraint schema","description":"constraint of atoms by ids, used to constraint the position etc.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector boolean 3d schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 boolean elements schema","type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}]}}}}},"required":["constraints"]}]}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material hashed schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hashed schema","type":"object","properties":{"hash":{"description":"Hash string which is calculated based on the meaningful fields of the entity. Used to identify equal entities.","type":"string"}},"required":["hash"]},{"properties":{"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"}}}]}]},{"$id":"material-hashed","$schema":"http://json-schema.org/draft-07/schema#","title":"material hashed schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hashed schema","type":"object","properties":{"hash":{"description":"Hash string which is calculated based on the meaningful fields of the entity. Used to identify equal entities.","type":"string"}},"required":["hash"]},{"properties":{"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"}}}]},{"$id":"materials-category/compound-pristine-structures/two-dimensional/interface/configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"Interface Configuration Schema","description":"A two-dimensional interface between two slabs, optionally including vacuum, with a specified stacking direction.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":3,"items":[{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Strained Supercell Configuration Schema","description":"A slab structure configuration with supercell transformation and strain matrix in the xy plane","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}}],"properties":{"xy_supercell_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Matrix 2D Schema","description":"Supercell matrix for xy plane transformations","type":"array","items":{"type":"array","items":{"type":"integer"},"minItems":2,"maxItems":2},"minItems":2,"maxItems":2,"default":[[1,0],[0,1]]},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3}},"required":["xy_supercell_matrix","strain_matrix"]}]},{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Strained Supercell Configuration Schema","description":"A slab structure configuration with supercell transformation and strain matrix in the xy plane","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}}],"properties":{"xy_supercell_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Matrix 2D Schema","description":"Supercell matrix for xy plane transformations","type":"array","items":{"type":"array","items":{"type":"integer"},"minItems":2,"maxItems":2},"minItems":2,"maxItems":2,"default":[[1,0],[0,1]]},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3}},"required":["xy_supercell_matrix","strain_matrix"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}],"description":"Components of the interface: slab, slab and vacuum"},"direction":{"default":"z"},"xy_shift":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 2d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2}]}],"default":[0,0],"description":"xy shift for the film as cartesian 2D vector on the xy plane."}}},{"$id":"materials-category/defective-structures/one-dimensional/grain-boundary-linear/configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"Grain Boundary Linear Configuration Schema","description":"Configuration for creating a linear grain boundary.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Interface Configuration Schema","description":"A two-dimensional interface between two slabs, optionally including vacuum, with a specified stacking direction.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":3,"items":[{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Strained Supercell Configuration Schema","description":"A slab structure configuration with supercell transformation and strain matrix in the xy plane","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}}],"properties":{"xy_supercell_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Matrix 2D Schema","description":"Supercell matrix for xy plane transformations","type":"array","items":{"type":"array","items":{"type":"integer"},"minItems":2,"maxItems":2},"minItems":2,"maxItems":2,"default":[[1,0],[0,1]]},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3}},"required":["xy_supercell_matrix","strain_matrix"]}]},{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Strained Supercell Configuration Schema","description":"A slab structure configuration with supercell transformation and strain matrix in the xy plane","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}}],"properties":{"xy_supercell_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Matrix 2D Schema","description":"Supercell matrix for xy plane transformations","type":"array","items":{"type":"array","items":{"type":"integer"},"minItems":2,"maxItems":2},"minItems":2,"maxItems":2,"default":[[1,0],[0,1]]},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3}},"required":["xy_supercell_matrix","strain_matrix"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}],"description":"Components of the interface: slab, slab and vacuum"},"direction":{"default":"z"},"xy_shift":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 2d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2}]}],"default":[0,0],"description":"xy shift for the film as cartesian 2D vector on the xy plane."}}}],"properties":{"stack_components":{"maxItems":2},"direction":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]}],"default":"x"},"actual_angle":{"type":"number","description":"The actual angle between the two phases","minimum":0,"maximum":360}},"required":["stack_components","direction"]},{"$id":"materials-category/defective-structures/three-dimensional/solid-solution/configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"Solid Solution Configuration Schema","description":"Configuration for a solid solution: a crystal with partial element substitution, using merge operation.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Schema","description":"A component of a stack, which can be a crystal or a vacuum","properties":{"merge_components":{"type":"array"},"merge_method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}},"required":["merge_components","merge_method"]}],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"source_element":{"description":"Element to partially replace (e.g. Hf).","type":"string"},"target_element":{"description":"Replacement element (e.g. Zr).","type":"string"},"target_concentration":{"description":"Requested fraction of source element sites to replace (0.0-1.0).","type":"number","minimum":0,"maximum":1},"actual_concentration":{"description":"Achievable fraction after supercell discretization and site rounding (0.0-1.0).","type":"number","minimum":0,"maximum":1},"merge_components":{"type":"array","items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Point Defect Site Schema","description":"A crystal site with defect information (atom or vacancy) for point defects","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Site Schema","description":"A site in a crystal that can be populated with an atom, vacancy, or void. Should be place in a target basis.","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["crystal","coordinate"]},{"type":"object","properties":{"element":{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atom Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]}},"required":["chemical_element"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacancy Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"allOf":[{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}],"default":"Vac"}},"required":["chemical_element"]}]}},"required":["element"]}]}]},"merge_method":{"default":"REPLACE"}},"required":["crystal","source_element","target_element","target_concentration","actual_concentration","merge_components","merge_method"]},{"$id":"materials-category/defective-structures/two-dimensional/adatom/configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"Adatom Defect Configuration Schema","description":"An adatom point defect configuration where an atom is added to a surface site on a slab.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Stack Configuration Schema","description":"Base configuration for a slab stack with another component and vacuum in the z-direction.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":3,"maxItems":3,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"type":"object"},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}}],"properties":{"stack_components":{"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Point Defect Site Schema","description":"A crystal site with defect information (atom or vacancy) for point defects","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Site Schema","description":"A site in a crystal that can be populated with an atom, vacancy, or void. Should be place in a target basis.","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["crystal","coordinate"]},{"type":"object","properties":{"element":{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atom Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]}},"required":["chemical_element"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacancy Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"allOf":[{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}],"default":"Vac"}},"required":["chemical_element"]}]}},"required":["element"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]}}},{"$id":"materials-category/defective-structures/two-dimensional/grain-boundary-planar/configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"Grain Boundary Planar Configuration Schema","description":"Configuration for creating a grain boundary between two phases.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Interface Configuration Schema","description":"A two-dimensional interface between two slabs, optionally including vacuum, with a specified stacking direction.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":3,"items":[{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Strained Supercell Configuration Schema","description":"A slab structure configuration with supercell transformation and strain matrix in the xy plane","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}}],"properties":{"xy_supercell_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Matrix 2D Schema","description":"Supercell matrix for xy plane transformations","type":"array","items":{"type":"array","items":{"type":"integer"},"minItems":2,"maxItems":2},"minItems":2,"maxItems":2,"default":[[1,0],[0,1]]},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3}},"required":["xy_supercell_matrix","strain_matrix"]}]},{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Strained Supercell Configuration Schema","description":"A slab structure configuration with supercell transformation and strain matrix in the xy plane","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}}],"properties":{"xy_supercell_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Matrix 2D Schema","description":"Supercell matrix for xy plane transformations","type":"array","items":{"type":"array","items":{"type":"integer"},"minItems":2,"maxItems":2},"minItems":2,"maxItems":2,"default":[[1,0],[0,1]]},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3}},"required":["xy_supercell_matrix","strain_matrix"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}],"description":"Components of the interface: slab, slab and vacuum"},"direction":{"default":"z"},"xy_shift":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 2d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2}]}],"default":[0,0],"description":"xy shift for the film as cartesian 2D vector on the xy plane."}}}],"properties":{"direction":{"default":"z"}}},{"$id":"materials-category/defective-structures/two-dimensional/island/configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"Island Defect Configuration Schema","description":"An island defect configuration where a void region is created in a slab, leaving an island of material.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Stack Configuration Schema","description":"Base configuration for a slab stack with another component and vacuum in the z-direction.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":3,"maxItems":3,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"type":"object"},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}}],"properties":{"stack_components":{"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Schema","description":"A component of a stack, which can be a crystal or a vacuum","properties":{"merge_components":{"type":"array"},"merge_method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}},"required":["merge_components","merge_method"]}],"properties":{"merge_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Void Region Schema","description":"A void region that applies coordinate condition to a crystal or slab and creates a void region","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"coordinate_condition":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Conditions Schema","description":"Combined schema for all coordinate condition types","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Box Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"box","default":"box"},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["min_coordinate","max_coordinate"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"sphere","default":"sphere"},"radius":{"type":"number","minimum":0}},"required":["radius"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"cylinder","default":"cylinder"},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["radius","min_z","max_z"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"triangular_prism","default":"triangular_prism"},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["position_on_surface_1","position_on_surface_2","position_on_surface_3","min_z","max_z"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"plane","default":"plane"},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["plane_normal","plane_point_coordinate"]}]}},"required":["crystal","coordinate_condition"]}]},"merge_method":{"default":"REPLACE"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]}}},{"$id":"materials-category/defective-structures/two-dimensional/terrace/configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"Terrace Defect Configuration Schema","description":"An terrace defect configuration where a void region is created in a slab that is stacked with another slab, creating a terrace.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Stack Configuration Schema","description":"Base configuration for a slab stack with another component and vacuum in the z-direction.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":3,"maxItems":3,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"type":"object"},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}}],"properties":{"stack_components":{"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Schema","description":"A component of a stack, which can be a crystal or a vacuum","properties":{"merge_components":{"type":"array"},"merge_method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}},"required":["merge_components","merge_method"]}],"properties":{"merge_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Void Region Schema","description":"A void region that applies coordinate condition to a crystal or slab and creates a void region","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"coordinate_condition":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Conditions Schema","description":"Combined schema for all coordinate condition types","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Box Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"box","default":"box"},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["min_coordinate","max_coordinate"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"sphere","default":"sphere"},"radius":{"type":"number","minimum":0}},"required":["radius"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"cylinder","default":"cylinder"},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["radius","min_z","max_z"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"triangular_prism","default":"triangular_prism"},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["position_on_surface_1","position_on_surface_2","position_on_surface_3","min_z","max_z"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"plane","default":"plane"},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["plane_normal","plane_point_coordinate"]}]}},"required":["crystal","coordinate_condition"]}]},"merge_method":{"default":"REPLACE"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"cut_direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["stack_components","cut_direction"]},{"$id":"materials-category/defective-structures/zero-dimensional/point-defect/base-configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"Point Defect Base Configuration Schema","description":"Base configuration for a point defect in a host crystal using merge operation.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Schema","description":"A component of a stack, which can be a crystal or a vacuum","properties":{"merge_components":{"type":"array"},"merge_method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}},"required":["merge_components","merge_method"]}],"properties":{"merge_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}]},"merge_method":{"default":"REPLACE"}},"required":["merge_components","merge_method"]},{"$id":"materials-category/defective-structures/zero-dimensional/point-defect/interstitial","$schema":"http://json-schema.org/draft-07/schema#","title":"Interstitial Point Defect Schema","description":"An interstitial point defect configuration where an atom is added to an interstitial site.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Point Defect Base Configuration Schema","description":"Base configuration for a point defect in a host crystal using merge operation.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Schema","description":"A component of a stack, which can be a crystal or a vacuum","properties":{"merge_components":{"type":"array"},"merge_method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}},"required":["merge_components","merge_method"]}],"properties":{"merge_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}]},"merge_method":{"default":"REPLACE"}},"required":["merge_components","merge_method"]}],"properties":{"merge_components":{"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Point Defect Site Schema","description":"A crystal site with defect information (atom or vacancy) for point defects","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Site Schema","description":"A site in a crystal that can be populated with an atom, vacancy, or void. Should be place in a target basis.","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["crystal","coordinate"]},{"type":"object","properties":{"element":{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atom Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]}},"required":["chemical_element"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacancy Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"allOf":[{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}],"default":"Vac"}},"required":["chemical_element"]}]}},"required":["element"]}]}]}}},{"$id":"materials-category/defective-structures/zero-dimensional/point-defect/substitutional","$schema":"http://json-schema.org/draft-07/schema#","title":"Substitutional Point Defect Schema","description":"A substitutional point defect configuration where an atom at a crystal site is replaced with a different element.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Point Defect Base Configuration Schema","description":"Base configuration for a point defect in a host crystal using merge operation.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Schema","description":"A component of a stack, which can be a crystal or a vacuum","properties":{"merge_components":{"type":"array"},"merge_method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}},"required":["merge_components","merge_method"]}],"properties":{"merge_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}]},"merge_method":{"default":"REPLACE"}},"required":["merge_components","merge_method"]}],"properties":{"merge_components":{"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Point Defect Site Schema","description":"A crystal site with defect information (atom or vacancy) for point defects","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Site Schema","description":"A site in a crystal that can be populated with an atom, vacancy, or void. Should be place in a target basis.","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["crystal","coordinate"]},{"type":"object","properties":{"element":{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atom Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]}},"required":["chemical_element"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacancy Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"allOf":[{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}],"default":"Vac"}},"required":["chemical_element"]}]}},"required":["element"]}]}]}}},{"$id":"materials-category/defective-structures/zero-dimensional/point-defect/vacancy","$schema":"http://json-schema.org/draft-07/schema#","title":"Vacancy Point Defect Schema","description":"A vacancy point defect configuration where an atom is removed from a crystal site.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Point Defect Base Configuration Schema","description":"Base configuration for a point defect in a host crystal using merge operation.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Schema","description":"A component of a stack, which can be a crystal or a vacuum","properties":{"merge_components":{"type":"array"},"merge_method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}},"required":["merge_components","merge_method"]}],"properties":{"merge_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}]},"merge_method":{"default":"REPLACE"}},"required":["merge_components","merge_method"]}],"properties":{"merge_components":{"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacancy Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"allOf":[{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}],"default":"Vac"}},"required":["chemical_element"]}]}}},{"$id":"materials-category/pristine-structures/three-dimensional/ideal-crystal","$schema":"http://json-schema.org/draft-07/schema#","title":"Ideal Crystal Schema","description":"An ideal, perfect crystal structure","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}]},{"$id":"materials-category/pristine-structures/two-dimensional/nanoribbon","$schema":"http://json-schema.org/draft-07/schema#","title":"Nanoribbon Configuration Schema","description":"A nanoribbon unit cell consisting of nanotape and vacuum stacked in X direction.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NanoTape Configuration Schema","description":"A nanotape unit cell consisting of crystal lattice lines and vacuum stacked in Y direction.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Lines Unique Repeated Schema","description":"Crystal lattice lines unique with integer number of repetitions, forming a full periodic structure with terminations","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Lines Schema","description":"A set of crystal lattice lines defined by 2D Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices_2d":{"$schema":"http://json-schema.org/draft-07/schema#","title":"2D Miller Indices Schema","description":"The (u,v) Miller indices for the line direction","type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"required":["miller_indices_2d"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"termination_bottom":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions_width":{"type":"integer","minimum":1,"default":1,"description":"Number of repetitions in width direction"},"number_of_repetitions_length":{"type":"integer","minimum":1,"default":1,"description":"Number of repetitions in length direction"}},"required":["termination_top"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"y"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"x"}}},{"$id":"materials-category/pristine-structures/two-dimensional/nanotape","$schema":"http://json-schema.org/draft-07/schema#","title":"NanoTape Configuration Schema","description":"A nanotape unit cell consisting of crystal lattice lines and vacuum stacked in Y direction.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Lines Unique Repeated Schema","description":"Crystal lattice lines unique with integer number of repetitions, forming a full periodic structure with terminations","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Lines Schema","description":"A set of crystal lattice lines defined by 2D Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices_2d":{"$schema":"http://json-schema.org/draft-07/schema#","title":"2D Miller Indices Schema","description":"The (u,v) Miller indices for the line direction","type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"required":["miller_indices_2d"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"termination_bottom":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions_width":{"type":"integer","minimum":1,"default":1,"description":"Number of repetitions in width direction"},"number_of_repetitions_length":{"type":"integer","minimum":1,"default":1,"description":"Number of repetitions in length direction"}},"required":["termination_top"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"y"}}},{"$id":"materials-category/pristine-structures/two-dimensional/slab","$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$id":"materials-category/pristine-structures/two-dimensional/slab-strained-supercell","$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Strained Supercell Configuration Schema","description":"A slab structure configuration with supercell transformation and strain matrix in the xy plane","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}}],"properties":{"xy_supercell_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Matrix 2D Schema","description":"Supercell matrix for xy plane transformations","type":"array","items":{"type":"array","items":{"type":"integer"},"minItems":2,"maxItems":2},"minItems":2,"maxItems":2,"default":[[1,0],[0,1]]},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3}},"required":["xy_supercell_matrix","strain_matrix"]},{"$id":"materials-category/processed-structures/two-dimensional/passivation/configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"Passivation Configuration Schema","description":"Configuration for a passivation that adds passivating atoms to a material surface.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Schema","description":"A component of a stack, which can be a crystal or a vacuum","properties":{"merge_components":{"type":"array"},"merge_method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}},"required":["merge_components","merge_method"]}],"properties":{"merge_components":{"type":"array","minItems":2,"items":{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Point Defect Site Schema","description":"A crystal site with defect information (atom or vacancy) for point defects","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Site Schema","description":"A site in a crystal that can be populated with an atom, vacancy, or void. Should be place in a target basis.","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["crystal","coordinate"]},{"type":"object","properties":{"element":{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atom Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]}},"required":["chemical_element"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacancy Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"allOf":[{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}],"default":"Vac"}},"required":["chemical_element"]}]}},"required":["element"]}]}]}},"merge_method":{"default":"ADD"},"passivant":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atom Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]}},"required":["chemical_element"]},"bond_length":{"type":"number","default":1,"description":"The bond length for the passivating atoms"}},"required":["merge_components","merge_method","passivant","bond_length"]},{"$id":"materials-category-components/entities/auxiliary/one-dimensional/miller-indices-2d","$schema":"http://json-schema.org/draft-07/schema#","title":"2D Miller Indices Schema","description":"The (u,v) Miller indices for the line direction","type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}},{"$id":"materials-category-components/entities/auxiliary/three-dimensional/supercell-matrix-3d","$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Matrix 3D Schema","description":"3x3 matrix of integers for transforming a unit cell into a supercell","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3,"default":[[1,0,0],[0,1,0],[0,0,1]]},{"$id":"materials-category-components/entities/auxiliary/two-dimensional/miller-indices","$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]},{"$id":"materials-category-components/entities/auxiliary/two-dimensional/supercell-matrix-2d","$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Matrix 2D Schema","description":"Supercell matrix for xy plane transformations","type":"array","items":{"type":"array","items":{"type":"integer"},"minItems":2,"maxItems":2},"minItems":2,"maxItems":2,"default":[[1,0],[0,1]]},{"$id":"materials-category-components/entities/auxiliary/two-dimensional/termination","$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},{"$id":"materials-category-components/entities/auxiliary/zero-dimensional/crystal-site","$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Site Schema","description":"A site in a crystal that can be populated with an atom, vacancy, or void. Should be place in a target basis.","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["crystal","coordinate"]},{"$id":"materials-category-components/entities/auxiliary/zero-dimensional/point-defect-site","$schema":"http://json-schema.org/draft-07/schema#","title":"Point Defect Site Schema","description":"A crystal site with defect information (atom or vacancy) for point defects","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Site Schema","description":"A site in a crystal that can be populated with an atom, vacancy, or void. Should be place in a target basis.","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["crystal","coordinate"]},{"type":"object","properties":{"element":{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atom Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]}},"required":["chemical_element"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacancy Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"allOf":[{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}],"default":"Vac"}},"required":["chemical_element"]}]}},"required":["element"]}]},{"$id":"materials-category-components/entities/auxiliary/zero-dimensional/void-region","$schema":"http://json-schema.org/draft-07/schema#","title":"Void Region Schema","description":"A void region that applies coordinate condition to a crystal or slab and creates a void region","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"coordinate_condition":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Conditions Schema","description":"Combined schema for all coordinate condition types","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Box Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"box","default":"box"},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["min_coordinate","max_coordinate"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"sphere","default":"sphere"},"radius":{"type":"number","minimum":0}},"required":["radius"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"cylinder","default":"cylinder"},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["radius","min_z","max_z"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"triangular_prism","default":"triangular_prism"},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["position_on_surface_1","position_on_surface_2","position_on_surface_3","min_z","max_z"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"plane","default":"plane"},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["plane_normal","plane_point_coordinate"]}]}},"required":["crystal","coordinate_condition"]},{"$id":"materials-category-components/entities/core/three-dimensional/crystal","$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},{"$id":"materials-category-components/entities/core/three-dimensional/void","$schema":"http://json-schema.org/draft-07/schema#","title":"Void Schema","description":"A void that can be placed into a crystal, removing all atoms inside","type":"object","properties":{"center_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Conditions Schema","description":"Combined schema for all coordinate condition types","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Box Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"box","default":"box"},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["min_coordinate","max_coordinate"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"sphere","default":"sphere"},"radius":{"type":"number","minimum":0}},"required":["radius"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"cylinder","default":"cylinder"},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["radius","min_z","max_z"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"triangular_prism","default":"triangular_prism"},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["position_on_surface_1","position_on_surface_2","position_on_surface_3","min_z","max_z"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"plane","default":"plane"},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["plane_normal","plane_point_coordinate"]}]}},"required":["center_coordinate","shape"]},{"$id":"materials-category-components/entities/core/two-dimensional/vacuum","$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]},{"$id":"materials-category-components/entities/core/zero-dimensional/atom","$schema":"http://json-schema.org/draft-07/schema#","title":"Atom Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]}},"required":["chemical_element"]},{"$id":"materials-category-components/entities/core/zero-dimensional/vacancy","$schema":"http://json-schema.org/draft-07/schema#","title":"Vacancy Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"allOf":[{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}],"default":"Vac"}},"required":["chemical_element"]},{"$id":"materials-category-components/entities/reusable/one-dimensional/crystal-lattice-lines","$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Lines Schema","description":"A set of crystal lattice lines defined by 2D Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices_2d":{"$schema":"http://json-schema.org/draft-07/schema#","title":"2D Miller Indices Schema","description":"The (u,v) Miller indices for the line direction","type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"required":["miller_indices_2d"]},{"$id":"materials-category-components/entities/reusable/one-dimensional/crystal-lattice-lines-unique-repeated","$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Lines Unique Repeated Schema","description":"Crystal lattice lines unique with integer number of repetitions, forming a full periodic structure with terminations","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Lines Schema","description":"A set of crystal lattice lines defined by 2D Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices_2d":{"$schema":"http://json-schema.org/draft-07/schema#","title":"2D Miller Indices Schema","description":"The (u,v) Miller indices for the line direction","type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"required":["miller_indices_2d"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"termination_bottom":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions_width":{"type":"integer","minimum":1,"default":1,"description":"Number of repetitions in width direction"},"number_of_repetitions_length":{"type":"integer","minimum":1,"default":1,"description":"Number of repetitions in length direction"}},"required":["termination_top"]},{"$id":"materials-category-components/entities/reusable/three-dimensional/crystal-lattice-base","$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]},{"$id":"materials-category-components/entities/reusable/three-dimensional/repetitions","$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Repetitions Schema","description":"Number of unit cells to repeat in each direction for a crystal structure.","type":"array","items":{"type":"integer","minimum":1},"minItems":3,"maxItems":3,"default":[1,1,1]},{"$id":"materials-category-components/entities/reusable/three-dimensional/strained-non-uniform","$schema":"http://json-schema.org/draft-07/schema#","title":"Non-Uniformly Strained Crystal Configuration Schema","description":"A crystal structure with non-uniform strain applied using a strain matrix","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3}},"required":["crystal","strain_matrix"]},{"$id":"materials-category-components/entities/reusable/three-dimensional/strained-uniform","$schema":"http://json-schema.org/draft-07/schema#","title":"Uniformly Strained Crystal Configuration Schema","description":"A crystal structure with uniform strain applied","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"strain_percentage":{"type":"number","description":"Percentage of uniform strain to apply to the crystal structure"}},"required":["crystal","strain_percentage"]},{"$id":"materials-category-components/entities/reusable/three-dimensional/supercell","$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Configuration Schema","description":"A repeated crystal structure defined by a transformation matrix","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3}},"required":["crystal","matrix"]},{"$id":"materials-category-components/entities/reusable/two-dimensional/atomic-layers","$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Schema","description":"A set of atomic layers defined by a plane in a crystal structure with specific terminations","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Schema","description":"A set of unique atomic layers defined by a plane in a crystal structure, including all possible terminations","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"terminations":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"minItems":1,"description":"All possible terminations for this orientation."}},"required":["terminations"]}]},{"$id":"materials-category-components/entities/reusable/two-dimensional/atomic-layers-unique","$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Schema","description":"A set of unique atomic layers defined by a plane in a crystal structure, including all possible terminations","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"terminations":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"minItems":1,"description":"All possible terminations for this orientation."}},"required":["terminations"]},{"$id":"materials-category-components/entities/reusable/two-dimensional/atomic-layers-unique-repeated","$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$id":"materials-category-components/entities/reusable/two-dimensional/crystal-lattice-planes","$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]},{"$id":"materials-category-components/entities/reusable/two-dimensional/slab-stack-configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Stack Configuration Schema","description":"Base configuration for a slab stack with another component and vacuum in the z-direction.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":3,"maxItems":3,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"type":"object"},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$id":"materials-category-components/operations/core/combinations/enums","$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]},{"$id":"materials-category-components/operations/core/combinations/merge","$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Schema","description":"A component of a stack, which can be a crystal or a vacuum","properties":{"merge_components":{"type":"array"},"merge_method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}},"required":["merge_components","merge_method"]},{"$id":"materials-category-components/operations/core/combinations/stack","$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]},{"$id":"materials-category-components/operations/core/modifications/perturb","$schema":"http://json-schema.org/draft-07/schema#","title":"Perturbation Schema","description":"A perturbation operation that modifies a configuration by applying a perturbation to atoms coordinates.","type":"object","properties":{"material":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]},"perturbation_function":{"type":"string","description":"A function that defines the perturbation (delta in coordinates) to be applied to the atomic coordinates."}}},{"$id":"materials-category-components/operations/core/modifications/repeat","$schema":"http://json-schema.org/draft-07/schema#","title":"Repeat Schema","properties":{"matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Matrix 3D Schema","description":"3x3 matrix of integers for transforming a unit cell into a supercell","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3,"default":[[1,0,0],[0,1,0],[0,0,1]]}}},{"$id":"materials-category-components/operations/core/modifications/strain","$schema":"http://json-schema.org/draft-07/schema#","title":"Strain Schema","properties":{"matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3}}},{"$id":"method/categorized-method","$schema":"http://json-schema.org/draft-07/schema#","title":"categorized method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"units":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}}},"required":["units"]},{"$id":"method/method-parameters","$schema":"http://json-schema.org/draft-07/schema#","title":"MethodParameters","allOf":[{"oneOf":[{"type":"object","properties":{"basisSlug":{"enum":["cc-pvdz","cc-pvtz","cc-pvqz"]}}},{"type":"object","properties":{"basisSlug":{"enum":["3-21G","6-31G","6-311G"]}}},{"type":"object","properties":{"basisSlug":{"enum":["sto-3g","sto-4g","sto-6g","def2-svp","def2-tzvp","def2-qzvp","cbs-qb3"]}}}]}]},{"$id":"method/unit-method","$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}},{"$id":"method","$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]},{"$id":"methods-category/mathematical/diff/enum-options","finiteDifference":{"enum":["fd"]}},{"$id":"methods-category/mathematical/diff/fd","$schema":"http://json-schema.org/draft-07/schema#","title":"Finite difference method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Numerical differentiation category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["diff"]}}}],"properties":{"tier2":{"enum":["fd"]}}},{"$id":"methods-category/mathematical/diff","$schema":"http://json-schema.org/draft-07/schema#","title":"Numerical differentiation category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["diff"]}}},{"$id":"methods-category/mathematical/discr/enum-options","meshing":{"enum":["mesh"]}},{"$id":"methods-category/mathematical/discr/mesh/enum-options","hybridMesh":{"enum":["hybrid"]},"unstructuredMesh":{"enum":["nstruct"]},"structuredMesh":{"enum":["struct"]}},{"$id":"methods-category/mathematical/discr/mesh/hybrid","$schema":"http://json-schema.org/draft-07/schema#","title":"Hybrid meshing category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Meshing method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Discretization category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["discr"]}}}],"properties":{"tier2":{"enum":["mesh"]}}}],"properties":{"tier3":{"enum":["hybrid"]}}},{"$id":"methods-category/mathematical/discr/mesh/nstruct","$schema":"http://json-schema.org/draft-07/schema#","title":"Unstructured meshing category nstruct schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Meshing method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Discretization category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["discr"]}}}],"properties":{"tier2":{"enum":["mesh"]}}}],"properties":{"tier3":{"enum":["nstruct"]}}},{"$id":"methods-category/mathematical/discr/mesh/struct/cartesian","$schema":"http://json-schema.org/draft-07/schema#","title":"Cartesian grid schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Structured meshing category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Meshing method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Discretization category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["discr"]}}}],"properties":{"tier2":{"enum":["mesh"]}}}],"properties":{"tier3":{"enum":["struct"]}}}],"properties":{"type":{"enum":["cartesian"]}}},{"$id":"methods-category/mathematical/discr/mesh/struct/enum-options","cartesian":{"enum":["cartesian"]}},{"$id":"methods-category/mathematical/discr/mesh/struct","$schema":"http://json-schema.org/draft-07/schema#","title":"Structured meshing category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Meshing method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Discretization category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["discr"]}}}],"properties":{"tier2":{"enum":["mesh"]}}}],"properties":{"tier3":{"enum":["struct"]}}},{"$id":"methods-category/mathematical/discr/mesh","$schema":"http://json-schema.org/draft-07/schema#","title":"Meshing method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Discretization category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["discr"]}}}],"properties":{"tier2":{"enum":["mesh"]}}},{"$id":"methods-category/mathematical/discr","$schema":"http://json-schema.org/draft-07/schema#","title":"Discretization category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["discr"]}}},{"$id":"methods-category/mathematical/enum-options","differentiation":{"enum":["diff"]},"discretization":{"enum":["discr"]},"functionApproximation":{"enum":["fapprx"]},"integration":{"enum":["intgr"]},"linearAlgebra":{"enum":["linalg"]},"optimization":{"enum":["opt"]},"regressionTypes":{"enum":["linear","kernel_ridge"]},"regressionSubtypes":{"enum":["least_squares","ridge"]}},{"$id":"methods-category/mathematical/fapprx/basisexp","$schema":"http://json-schema.org/draft-07/schema#","title":"Basis expansion category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unstructured meshing category fapprx schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["fapprx"]}}}],"properties":{"tier2":{"enum":["basisExp"]}}},{"$id":"methods-category/mathematical/fapprx/enum-options","basisExpansion":{"enum":["basisExp"]},"interpolation":{"enum":["ipol"]}},{"$id":"methods-category/mathematical/fapprx/ipol/enum-options","linear":{"enum":["lin"]},"polynomial":{"enum":["poly"]},"spline":{"enum":["spline"]}},{"$id":"methods-category/mathematical/fapprx/ipol/lin","$schema":"http://json-schema.org/draft-07/schema#","title":"Linear interpolation category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Interpolation category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unstructured meshing category fapprx schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["fapprx"]}}}],"properties":{"tier2":{"enum":["ipol"]}}}],"properties":{"tier3":{"enum":["lin"]}}},{"$id":"methods-category/mathematical/fapprx/ipol/poly","$schema":"http://json-schema.org/draft-07/schema#","title":"Polynomial interpolation category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Interpolation category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unstructured meshing category fapprx schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["fapprx"]}}}],"properties":{"tier2":{"enum":["ipol"]}}}],"properties":{"tier3":{"enum":["poly"]}}},{"$id":"methods-category/mathematical/fapprx/ipol/spline","$schema":"http://json-schema.org/draft-07/schema#","title":"Spline interpolation category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Interpolation category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unstructured meshing category fapprx schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["fapprx"]}}}],"properties":{"tier2":{"enum":["ipol"]}}}],"properties":{"tier3":{"enum":["spline"]}}},{"$id":"methods-category/mathematical/fapprx/ipol","$schema":"http://json-schema.org/draft-07/schema#","title":"Interpolation category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unstructured meshing category fapprx schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["fapprx"]}}}],"properties":{"tier2":{"enum":["ipol"]}}},{"$id":"methods-category/mathematical/fapprx","$schema":"http://json-schema.org/draft-07/schema#","title":"Unstructured meshing category fapprx schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["fapprx"]}}},{"$id":"methods-category/mathematical/intgr/analytic/enum-options","volume":{"enum":["volume"]},"volumeSubtypes":{"enum":["sphere","cube","rect-prism","tri-prism","cylinder","cone","tetrahedron","sq-pyr"]}},{"$id":"methods-category/mathematical/intgr/analytic/volume","$schema":"http://json-schema.org/draft-07/schema#","title":"Analytic volume integral category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Analytic integral category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}}],"properties":{"tier2":{"enum":["analytic"]}}}],"properties":{"type":{"enum":["volume"]},"subtype":{"enum":["sphere","cube","rect-prism","tri-prism","cylinder","cone","tetrahedron","sq-pyr"]}}},{"$id":"methods-category/mathematical/intgr/analytic","$schema":"http://json-schema.org/draft-07/schema#","title":"Analytic integral category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}}],"properties":{"tier2":{"enum":["analytic"]}}},{"$id":"methods-category/mathematical/intgr/diffeq/enum-options","firstOrder":{"enum":["order1"]},"secondOrder":{"enum":["order2"]}},{"$id":"methods-category/mathematical/intgr/diffeq/order1","$schema":"http://json-schema.org/draft-07/schema#","description":"Categories for the numerical integration of differential equations","type":"object","title":"Order1 schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods for the numerical integration of differential equations schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}}],"properties":{"tier2":{"enum":["diffeq"]}}}],"properties":{"tier3":{"enum":["order1"]}}},{"$id":"methods-category/mathematical/intgr/diffeq/order2","$schema":"http://json-schema.org/draft-07/schema#","description":"Categories for the numerical integration of differential equations","type":"object","title":"Order2 schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods for the numerical integration of differential equations schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}}],"properties":{"tier2":{"enum":["diffeq"]}}}],"properties":{"tier3":{"enum":["order2"]}}},{"$id":"methods-category/mathematical/intgr/diffeq","$schema":"http://json-schema.org/draft-07/schema#","title":"Methods for the numerical integration of differential equations schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}}],"properties":{"tier2":{"enum":["diffeq"]}}},{"$id":"methods-category/mathematical/intgr/enum-options","analytic":{"enum":["analytic"]},"differentialEquation":{"enum":["diffeq"]},"numericalQuadrature":{"enum":["numquad"]},"transformation":{"enum":["transf"]}},{"$id":"methods-category/mathematical/intgr/numquad/enum-options","gaussQuadrature":{"enum":["gauss"]},"newtonCotes":{"enum":["newcot"]}},{"$id":"methods-category/mathematical/intgr/numquad/gauss","$schema":"http://json-schema.org/draft-07/schema#","title":"Gaussian quadrature rules schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods for the numerical quadrature schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}}],"properties":{"tier2":{"enum":["numquad"]}}}],"properties":{"tier3":{"enum":["gauss"]}}},{"$id":"methods-category/mathematical/intgr/numquad/newcot","$schema":"http://json-schema.org/draft-07/schema#","title":"Newton-Cotes quadrature rules schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods for the numerical quadrature schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}}],"properties":{"tier2":{"enum":["numquad"]}}}],"properties":{"tier3":{"enum":["newcot"]}}},{"$id":"methods-category/mathematical/intgr/numquad","$schema":"http://json-schema.org/draft-07/schema#","title":"Methods for the numerical quadrature schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}}],"properties":{"tier2":{"enum":["numquad"]}}},{"$id":"methods-category/mathematical/intgr/transf/enum-options","fourierTransformation":{"enum":["fourier"]}},{"$id":"methods-category/mathematical/intgr/transf/fourier","$schema":"http://json-schema.org/draft-07/schema#","description":"Fourier transform methods","title":"Fourier transform methods schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","description":"Integral transform methods","title":"Integral transform methods schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}}],"properties":{"tier2":{"enum":["transf"]}}}],"properties":{"type":{"enum":["fourier"]}}},{"$id":"methods-category/mathematical/intgr/transf","$schema":"http://json-schema.org/draft-07/schema#","description":"Integral transform methods","title":"Integral transform methods schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}}],"properties":{"tier2":{"enum":["transf"]}}},{"$id":"methods-category/mathematical/intgr","$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}},{"$id":"methods-category/mathematical/linalg/dcomp","$schema":"http://json-schema.org/draft-07/schema#","title":"Matrix decomposition methods schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Linear Algebra category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["linalg"]}}}],"properties":{"tier2":{"enum":["dcomp"]}}},{"$id":"methods-category/mathematical/linalg/diag/davidson","$schema":"http://json-schema.org/draft-07/schema#","title":"Davidson diagonalization method schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Matrix diagonalization methods schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Linear Algebra category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["linalg"]}}}],"properties":{"tier2":{"enum":["diag"]}}}],"properties":{"type":{"enum":["davidson"]}}},{"$id":"methods-category/mathematical/linalg/diag/enum-options","davidson":{"enum":["davidson"]}},{"$id":"methods-category/mathematical/linalg/diag","$schema":"http://json-schema.org/draft-07/schema#","title":"Matrix diagonalization methods schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Linear Algebra category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["linalg"]}}}],"properties":{"tier2":{"enum":["diag"]}}},{"$id":"methods-category/mathematical/linalg/enum-options","decomposition":{"enum":["dcomp"]},"diagonalization":{"enum":["diag"]},"linearTransformation":{"enum":["lintra"]},"matrixFunction":{"enum":["matf"]}},{"$id":"methods-category/mathematical/linalg/lintra","$schema":"http://json-schema.org/draft-07/schema#","title":"Linear transformation methods schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Linear Algebra category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["linalg"]}}}],"properties":{"tier2":{"enum":["lintra"]}}},{"$id":"methods-category/mathematical/linalg/matf","$schema":"http://json-schema.org/draft-07/schema#","title":"Matrix function methods schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Linear Algebra category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["linalg"]}}}],"properties":{"tier2":{"enum":["matf"]}}},{"$id":"methods-category/mathematical/linalg","$schema":"http://json-schema.org/draft-07/schema#","title":"Linear Algebra category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["linalg"]}}},{"$id":"methods-category/mathematical/opt/diff/bracket","$schema":"http://json-schema.org/draft-07/schema#","title":"Bracket algorithms for the optimization of differentiable functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["diff"]}}}],"properties":{"tier3":{"enum":["bracket"]}}},{"$id":"methods-category/mathematical/opt/diff/enum-options","bracketing":{"enum":["bracket"]},"localDescent":{"enum":["local"]},"firstOrder":{"enum":["order1"]},"secondOrder":{"enum":["order2"]},"nOrder":{"enum":["ordern"]}},{"$id":"methods-category/mathematical/opt/diff/local","$schema":"http://json-schema.org/draft-07/schema#","title":"Local descent methods for the optimization of differentiable functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["diff"]}}}],"properties":{"tier3":{"enum":["local"]}}},{"$id":"methods-category/mathematical/opt/diff/order1","$schema":"http://json-schema.org/draft-07/schema#","title":"First order algorithms for the optimization of differentiable functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["diff"]}}}],"properties":{"tier3":{"enum":["order1"]}}},{"$id":"methods-category/mathematical/opt/diff/order2","$schema":"http://json-schema.org/draft-07/schema#","title":"Second order algorithms for the optimization of differentiable functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["diff"]}}}],"properties":{"tier3":{"enum":["order2"]}}},{"$id":"methods-category/mathematical/opt/diff/ordern/cg","$schema":"http://json-schema.org/draft-07/schema#","title":"Conjugate gradient method schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mixed order and higher order algorithms for the optimization of differentiable functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["diff"]}}}],"properties":{"tier3":{"enum":["ordern"]}}}],"properties":{"type":{"enum":["cg"]}}},{"$id":"methods-category/mathematical/opt/diff/ordern/enum-options","conjugateGradient":{"enum":["cg"]}},{"$id":"methods-category/mathematical/opt/diff/ordern","$schema":"http://json-schema.org/draft-07/schema#","title":"Mixed order and higher order algorithms for the optimization of differentiable functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["diff"]}}}],"properties":{"tier3":{"enum":["ordern"]}}},{"$id":"methods-category/mathematical/opt/diff","$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["diff"]}}},{"$id":"methods-category/mathematical/opt/enum-options","differentiable":{"enum":["diff"]},"nonDifferentiable":{"enum":["ndiff"]},"rootFinding":{"enum":["root"]}},{"$id":"methods-category/mathematical/opt/ndiff/direct","$schema":"http://json-schema.org/draft-07/schema#","title":"Direct algorithms for the optimization of non-differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for non-differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["ndiff"]}}}],"properties":{"tier3":{"enum":["direct"]}}},{"$id":"methods-category/mathematical/opt/ndiff/enum-options","direct":{"enum":["direct"]},"population":{"enum":["pop"]},"stochastic":{"enum":["stoch"]}},{"$id":"methods-category/mathematical/opt/ndiff/pop","$schema":"http://json-schema.org/draft-07/schema#","title":"Population algorithms for the optmization of non-differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for non-differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["ndiff"]}}}],"properties":{"tier3":{"enum":["pop"]}}},{"$id":"methods-category/mathematical/opt/ndiff/stoch","$schema":"http://json-schema.org/draft-07/schema#","title":"Stochastic algorithms for the optmization of non-differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for non-differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["ndiff"]}}}],"properties":{"tier3":{"enum":["stoch"]}}},{"$id":"methods-category/mathematical/opt/ndiff","$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for non-differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["ndiff"]}}},{"$id":"methods-category/mathematical/opt/root/bracket","$schema":"http://json-schema.org/draft-07/schema#","title":"Bracketing method for finding roots category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Root finding category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["root"]}}}],"properties":{"tier3":{"enum":["bracket"]}}},{"$id":"methods-category/mathematical/opt/root/enum-options","iterative":{"enum":["iterative"]},"bracketing":{"enum":["bracket"]}},{"$id":"methods-category/mathematical/opt/root/iter","$schema":"http://json-schema.org/draft-07/schema#","title":"Iterative method for root finding category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Root finding category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["root"]}}}],"properties":{"tier3":{"enum":["iterative"]}}},{"$id":"methods-category/mathematical/opt/root","$schema":"http://json-schema.org/draft-07/schema#","title":"Root finding category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["root"]}}},{"$id":"methods-category/mathematical/opt","$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}},{"$id":"methods-category/mathematical/regression","$schema":"http://json-schema.org/draft-07/schema#","title":"linear methods category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"type":{"enum":["linear","kernel_ridge"]},"subtype":{"enum":["least_squares","ridge"]}}},{"$id":"methods-category/physical/enum-options","quantumMechanical":{"enum":["qm"]}},{"$id":"methods-category/physical/qm/enum-options","wavefunction":{"enum":["wf"]}},{"$id":"methods-category/physical/qm/wf/ao/dunning","$schema":"http://json-schema.org/draft-07/schema#","title":"Dunning correlation-consistent basis set category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Approximating the electronic wave function with a atomic orbital basis schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["ao"]},"subtype":{"enum":["pople","dunning","other"]}}}],"properties":{"subtype":{"enum":["dunning"]}}},{"$id":"methods-category/physical/qm/wf/ao/other","$schema":"http://json-schema.org/draft-07/schema#","title":"Other (neither Pople nor Dunning) basis set category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Approximating the electronic wave function with a atomic orbital basis schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["ao"]},"subtype":{"enum":["pople","dunning","other"]}}}],"properties":{"subtype":{"enum":["other"]}}},{"$id":"methods-category/physical/qm/wf/ao/pople","$schema":"http://json-schema.org/draft-07/schema#","title":"Pople basis set category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Approximating the electronic wave function with a atomic orbital basis schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["ao"]},"subtype":{"enum":["pople","dunning","other"]}}}],"properties":{"subtype":{"enum":["pople"]}}},{"$id":"methods-category/physical/qm/wf/ao","$schema":"http://json-schema.org/draft-07/schema#","title":"Approximating the electronic wave function with a atomic orbital basis schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["ao"]},"subtype":{"enum":["pople","dunning","other"]}}},{"$id":"methods-category/physical/qm/wf/enum-options","planewave":{"enum":["pw"]},"atomicOrbital":{"enum":["ao"]},"wavelet":{"enum":["wvl"]},"smearing":{"enum":["smearing"]},"tetrahedron":{"enum":["tetrahedron"]},"pseudization":{"enum":["psp"]},"pseudoSubtypes":{"enum":["us","nc","nc-fr","paw","coulomb"]},"smearingSubtypes":{"enum":["gaussian","marzari-vanderbilt","methfessel-paxton","fermi-dirac"]},"tetrahedronSubtypes":{"enum":["linear","optimized","bloechl"]},"aoTypes":{"enum":["pople","dunning","other"]}},{"$id":"methods-category/physical/qm/wf/psp","$schema":"http://json-schema.org/draft-07/schema#","title":"Pseudopotential category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["psp"]},"subtype":{"enum":["us","nc","nc-fr","paw","coulomb"]}}},{"$id":"methods-category/physical/qm/wf/pw","$schema":"http://json-schema.org/draft-07/schema#","title":"Plane wave catgeory schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["pw"]}}},{"$id":"methods-category/physical/qm/wf/smearing","$schema":"http://json-schema.org/draft-07/schema#","title":"Smearing methods category schema","description":"Approximating Heaviside step function with smooth function","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["smearing"]},"subtype":{"enum":["gaussian","marzari-vanderbilt","methfessel-paxton","fermi-dirac"]}}},{"$id":"methods-category/physical/qm/wf/tetrahedron","$schema":"http://json-schema.org/draft-07/schema#","title":"Tetrahedron method for Brillouin zone integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["tetrahedron"]},"subtype":{"enum":["linear","optimized","bloechl"]}}},{"$id":"methods-category/physical/qm/wf","$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}},{"$id":"methods-category/physical/qm","$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}},{"$id":"methods-directory/legacy/localorbital","$schema":"http://json-schema.org/draft-07/schema#","title":"legacy method localorbital","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}],"properties":{"type":{"const":"localorbital"},"subtype":{"const":"pople"}}},{"$id":"methods-directory/legacy/pseudopotential","$schema":"http://json-schema.org/draft-07/schema#","title":"legacy method pseudopotential","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}],"properties":{"type":{"const":"pseudopotential"},"subtype":{"enum":["paw","nc","us","any"],"default":"us"}}},{"$id":"methods-directory/legacy/regression","$schema":"http://json-schema.org/draft-07/schema#","title":"legacy method regression","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}],"properties":{"type":{"enum":["linear","kernel_ridge"]},"subtype":{"enum":["least_squares","ridge"]},"precision":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision","type":"object","properties":{"perProperty":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision per property schema","type":"object","properties":{"name":{"description":"property name in 'flattened' format","type":"string"},"trainingError":{"description":"training error of the estimator","type":"number"},"score":{"description":"prediction score of the estimator. Eg: r2_score","type":"number"}},"required":["trainingError"]}}}},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression data","type":"object","properties":{"perProperty":{"type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"linear regression parameters schema","type":"object","properties":{"intercept":{"description":"intercept (shift) from the linear or non-linear fit of data points","type":"number"},"perFeature":{"type":"array","description":"per-feature (property used for training the ML method/model) parameters","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"per-feature (property used for training the ML method/model) parameters schema","type":"object","properties":{"coefficient":{"description":"coefficient in linear regression","type":"number"},"name":{"description":"feature name","type":"string"},"importance":{"description":"pvalue: https://en.wikipedia.org/wiki/P-value","type":"number"}},"required":["name"]}}},"required":["intercept","perFeature"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"kernel-ridge regression parameters schema","type":"object","properties":{"xFit":{"description":"training data","type":"array"},"dualCoefficients":{"description":"dual coefficients","type":"array"},"perFeature":{"type":"array","description":"per-feature (property used for training the ML method/model) parameters","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"per-feature (property used for training the ML method/model) parameters schema","type":"object","properties":{"coefficient":{"description":"coefficient in linear regression","type":"number"},"name":{"description":"feature name","type":"string"},"importance":{"description":"pvalue: https://en.wikipedia.org/wiki/P-value","type":"number"}},"required":["name"]}}},"required":["xFit","dualCoefficients","perFeature"]}]}},"dataSet":{"$schema":"http://json-schema.org/draft-07/schema#","description":"dataset for ml","type":"object","properties":{"exabyteIds":{"description":"array of exabyteIds for materials in dataset","type":"array","items":{"type":"string"}},"extra":{"description":"holder for any extra information, eg. coming from user-uploaded CSV file"}},"required":["exabyteIds"]}}}},"required":["precision","data"]},{"$id":"methods-directory/legacy/unknown","$schema":"http://json-schema.org/draft-07/schema#","title":"legacy method unknown","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}],"properties":{"type":{"const":"unknown"},"subtype":{"const":"unknown"}}},{"$id":"methods-directory/mathematical/cg","$schema":"http://json-schema.org/draft-07/schema#","title":"Unit method conjugate gradient","description":"conjugate gradient method schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Conjugate gradient method schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mixed order and higher order algorithms for the optimization of differentiable functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["diff"]}}}],"properties":{"tier3":{"enum":["ordern"]}}}],"properties":{"type":{"enum":["cg"]}}}},"required":["categories"]},{"$id":"methods-directory/mathematical/davidson","$schema":"http://json-schema.org/draft-07/schema#","title":"Unit method davidson schema","description":"Davidson diagonalization method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Davidson diagonalization method schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Matrix diagonalization methods schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Linear Algebra category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["linalg"]}}}],"properties":{"tier2":{"enum":["diag"]}}}],"properties":{"type":{"enum":["davidson"]}}}},"required":["categories"]},{"$id":"methods-directory/mathematical/regression/data","$schema":"http://json-schema.org/draft-07/schema#","title":"regression data","type":"object","properties":{"perProperty":{"type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"linear regression parameters schema","type":"object","properties":{"intercept":{"description":"intercept (shift) from the linear or non-linear fit of data points","type":"number"},"perFeature":{"type":"array","description":"per-feature (property used for training the ML method/model) parameters","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"per-feature (property used for training the ML method/model) parameters schema","type":"object","properties":{"coefficient":{"description":"coefficient in linear regression","type":"number"},"name":{"description":"feature name","type":"string"},"importance":{"description":"pvalue: https://en.wikipedia.org/wiki/P-value","type":"number"}},"required":["name"]}}},"required":["intercept","perFeature"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"kernel-ridge regression parameters schema","type":"object","properties":{"xFit":{"description":"training data","type":"array"},"dualCoefficients":{"description":"dual coefficients","type":"array"},"perFeature":{"type":"array","description":"per-feature (property used for training the ML method/model) parameters","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"per-feature (property used for training the ML method/model) parameters schema","type":"object","properties":{"coefficient":{"description":"coefficient in linear regression","type":"number"},"name":{"description":"feature name","type":"string"},"importance":{"description":"pvalue: https://en.wikipedia.org/wiki/P-value","type":"number"}},"required":["name"]}}},"required":["xFit","dualCoefficients","perFeature"]}]}},"dataSet":{"$schema":"http://json-schema.org/draft-07/schema#","description":"dataset for ml","type":"object","properties":{"exabyteIds":{"description":"array of exabyteIds for materials in dataset","type":"array","items":{"type":"string"}},"extra":{"description":"holder for any extra information, eg. coming from user-uploaded CSV file"}},"required":["exabyteIds"]}}},{"$id":"methods-directory/mathematical/regression/dataset","$schema":"http://json-schema.org/draft-07/schema#","description":"dataset for ml","type":"object","properties":{"exabyteIds":{"description":"array of exabyteIds for materials in dataset","type":"array","items":{"type":"string"}},"extra":{"description":"holder for any extra information, eg. coming from user-uploaded CSV file"}},"required":["exabyteIds"]},{"$id":"methods-directory/mathematical/regression/kernel-ridge/data-per-property","$schema":"http://json-schema.org/draft-07/schema#","title":"kernel-ridge regression parameters schema","type":"object","properties":{"xFit":{"description":"training data","type":"array"},"dualCoefficients":{"description":"dual coefficients","type":"array"},"perFeature":{"type":"array","description":"per-feature (property used for training the ML method/model) parameters","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"per-feature (property used for training the ML method/model) parameters schema","type":"object","properties":{"coefficient":{"description":"coefficient in linear regression","type":"number"},"name":{"description":"feature name","type":"string"},"importance":{"description":"pvalue: https://en.wikipedia.org/wiki/P-value","type":"number"}},"required":["name"]}}},"required":["xFit","dualCoefficients","perFeature"]},{"$id":"methods-directory/mathematical/regression/linear/data-per-property","$schema":"http://json-schema.org/draft-07/schema#","title":"linear regression parameters schema","type":"object","properties":{"intercept":{"description":"intercept (shift) from the linear or non-linear fit of data points","type":"number"},"perFeature":{"type":"array","description":"per-feature (property used for training the ML method/model) parameters","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"per-feature (property used for training the ML method/model) parameters schema","type":"object","properties":{"coefficient":{"description":"coefficient in linear regression","type":"number"},"name":{"description":"feature name","type":"string"},"importance":{"description":"pvalue: https://en.wikipedia.org/wiki/P-value","type":"number"}},"required":["name"]}}},"required":["intercept","perFeature"]},{"$id":"methods-directory/mathematical/regression/per-feature-item","$schema":"http://json-schema.org/draft-07/schema#","title":"per-feature (property used for training the ML method/model) parameters schema","type":"object","properties":{"coefficient":{"description":"coefficient in linear regression","type":"number"},"name":{"description":"feature name","type":"string"},"importance":{"description":"pvalue: https://en.wikipedia.org/wiki/P-value","type":"number"}},"required":["name"]},{"$id":"methods-directory/mathematical/regression/precision","$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision","type":"object","properties":{"perProperty":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision per property schema","type":"object","properties":{"name":{"description":"property name in 'flattened' format","type":"string"},"trainingError":{"description":"training error of the estimator","type":"number"},"score":{"description":"prediction score of the estimator. Eg: r2_score","type":"number"}},"required":["trainingError"]}}}},{"$id":"methods-directory/mathematical/regression/precision-per-property","$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision per property schema","type":"object","properties":{"name":{"description":"property name in 'flattened' format","type":"string"},"trainingError":{"description":"training error of the estimator","type":"number"},"score":{"description":"prediction score of the estimator. Eg: r2_score","type":"number"}},"required":["trainingError"]},{"$id":"methods-directory/mathematical/regression","$schema":"http://json-schema.org/draft-07/schema#","title":"unit method regression","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"linear methods category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"type":{"enum":["linear","kernel_ridge"]},"subtype":{"enum":["least_squares","ridge"]}}},"precision":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision","type":"object","properties":{"perProperty":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision per property schema","type":"object","properties":{"name":{"description":"property name in 'flattened' format","type":"string"},"trainingError":{"description":"training error of the estimator","type":"number"},"score":{"description":"prediction score of the estimator. Eg: r2_score","type":"number"}},"required":["trainingError"]}}}},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression data","type":"object","properties":{"perProperty":{"type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"linear regression parameters schema","type":"object","properties":{"intercept":{"description":"intercept (shift) from the linear or non-linear fit of data points","type":"number"},"perFeature":{"type":"array","description":"per-feature (property used for training the ML method/model) parameters","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"per-feature (property used for training the ML method/model) parameters schema","type":"object","properties":{"coefficient":{"description":"coefficient in linear regression","type":"number"},"name":{"description":"feature name","type":"string"},"importance":{"description":"pvalue: https://en.wikipedia.org/wiki/P-value","type":"number"}},"required":["name"]}}},"required":["intercept","perFeature"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"kernel-ridge regression parameters schema","type":"object","properties":{"xFit":{"description":"training data","type":"array"},"dualCoefficients":{"description":"dual coefficients","type":"array"},"perFeature":{"type":"array","description":"per-feature (property used for training the ML method/model) parameters","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"per-feature (property used for training the ML method/model) parameters schema","type":"object","properties":{"coefficient":{"description":"coefficient in linear regression","type":"number"},"name":{"description":"feature name","type":"string"},"importance":{"description":"pvalue: https://en.wikipedia.org/wiki/P-value","type":"number"}},"required":["name"]}}},"required":["xFit","dualCoefficients","perFeature"]}]}},"dataSet":{"$schema":"http://json-schema.org/draft-07/schema#","description":"dataset for ml","type":"object","properties":{"exabyteIds":{"description":"array of exabyteIds for materials in dataset","type":"array","items":{"type":"string"}},"extra":{"description":"holder for any extra information, eg. coming from user-uploaded CSV file"}},"required":["exabyteIds"]}}}},"required":["categories","precision","data"]},{"$id":"methods-directory/physical/ao/dunning","$schema":"http://json-schema.org/draft-07/schema#","title":"unit method ao dunning","description":"Dunning correlation-consistent basis set unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dunning correlation-consistent basis set category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Approximating the electronic wave function with a atomic orbital basis schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["ao"]},"subtype":{"enum":["pople","dunning","other"]}}}],"properties":{"subtype":{"enum":["dunning"]}}},"parameters":{"allOf":[{"type":"object","properties":{"basisSlug":{"enum":["cc-pvdz","cc-pvtz","cc-pvqz"]}}}]}},"required":["categories"],"definitions":{"ao-basis-dunning":{"type":"object","properties":{"basisSlug":{"enum":["cc-pvdz","cc-pvtz","cc-pvqz"]}}}}},{"$id":"methods-directory/physical/ao/enum-options","popleAoBasis":{"enum":["3-21G","6-31G","6-311G"]},"dunningAoBasis":{"enum":["cc-pvdz","cc-pvtz","cc-pvqz"]},"otherAoBasis":{"enum":["sto-3g","sto-4g","sto-6g","def2-svp","def2-tzvp","def2-qzvp","cbs-qb3"]}},{"$id":"methods-directory/physical/ao/other","$schema":"http://json-schema.org/draft-07/schema#","title":"unit method ao other","description":"Other (neither Pople nor Dunning) basis set unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Other (neither Pople nor Dunning) basis set category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Approximating the electronic wave function with a atomic orbital basis schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["ao"]},"subtype":{"enum":["pople","dunning","other"]}}}],"properties":{"subtype":{"enum":["other"]}}},"parameters":{"allOf":[{"type":"object","properties":{"basisSlug":{"enum":["sto-3g","sto-4g","sto-6g","def2-svp","def2-tzvp","def2-qzvp","cbs-qb3"]}}}]}},"required":["categories"],"definitions":{"ao-basis-other":{"type":"object","properties":{"basisSlug":{"enum":["sto-3g","sto-4g","sto-6g","def2-svp","def2-tzvp","def2-qzvp","cbs-qb3"]}}}}},{"$id":"methods-directory/physical/ao/pople","$schema":"http://json-schema.org/draft-07/schema#","title":"unit method ao pople","description":"Pople basis set unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Pople basis set category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Approximating the electronic wave function with a atomic orbital basis schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["ao"]},"subtype":{"enum":["pople","dunning","other"]}}}],"properties":{"subtype":{"enum":["pople"]}}},"parameters":{"allOf":[{"type":"object","properties":{"basisSlug":{"enum":["3-21G","6-31G","6-311G"]}}}]}},"required":["categories"],"definitions":{"ao-basis-pople":{"type":"object","properties":{"basisSlug":{"enum":["3-21G","6-31G","6-311G"]}}}}},{"$id":"methods-directory/physical/psp/file","$schema":"http://json-schema.org/draft-07/schema#","title":"Pseudopotential file","type":"object","properties":{"slug":{"enum":["pseudopotential"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"File data item","type":"object","properties":{"element":{"type":"string","description":"chemical element"},"hash":{"type":"string","description":"MD5 hash of the pseudopotential file"},"type":{"enum":["us","nc","nc-fr","paw","coulomb"]},"source":{"type":"string","description":"explains where this came from"},"version":{"type":"string","description":"explains the version of where this came from"},"exchangeCorrelation":{"type":"object","properties":{"approximation":{"description":"DFT approximation","type":"string"},"functional":{"description":"Exchange correlation functional","type":"string"},"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}},"valenceConfiguration":{"type":"array","description":"contains pseudo orbital information, including orbital names and occupations","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic orbital schema","type":"object","properties":{"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalIndex":{"type":"integer","minimum":1},"principalNumber":{"type":"integer","minimum":1,"maximum":7},"angularMomentum":{"type":"integer","minimum":0,"maximum":3},"occupation":{"type":"number","description":"Shell occupation","minimum":0,"maximum":14}}}},"path":{"type":"string","description":"location of the pseudopotential file on filesystem"},"apps":{"type":"array","description":"The names of the simulation engines that can use this pseudopotential, e.g. espresso","items":{"type":"string"}},"filename":{"type":"string","description":"filename of pseudopotential file on filesystem"},"name":{"type":"string","description":"name of the data category","enum":["pseudopotential"]},"cutoffs":{"type":"object","description":"Suggested cutoff values for wave function and charge density.","additionalProperties":false,"properties":{"wavefunction":{"type":"array","description":"Energy cutoff values for wavefunction plane wave expansion.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for energy value with unit corresponding to a specific accuracy level, e.g., used for suggested wavefunction and charge density cutoffs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for scalar values with accuracy levels","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]}},"required":["accuracy_level"]}],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]}},"required":["unit"]}},"density":{"type":"array","description":"Energy cutoff values for charge density plane wave expansion.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for energy value with unit corresponding to a specific accuracy level, e.g., used for suggested wavefunction and charge density cutoffs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for scalar values with accuracy levels","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]}},"required":["accuracy_level"]}],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]}},"required":["unit"]}}}}},"required":["element","type","exchangeCorrelation","source","path","apps","name","hash"]},"source":{"type":"object","description":"TODO: remove in the future","properties":{"info":{"type":"object"},"type":{"type":"string"}}}}},{"$id":"methods-directory/physical/psp/file-data-item","$schema":"http://json-schema.org/draft-07/schema#","title":"File data item","type":"object","properties":{"element":{"type":"string","description":"chemical element"},"hash":{"type":"string","description":"MD5 hash of the pseudopotential file"},"type":{"enum":["us","nc","nc-fr","paw","coulomb"]},"source":{"type":"string","description":"explains where this came from"},"version":{"type":"string","description":"explains the version of where this came from"},"exchangeCorrelation":{"type":"object","properties":{"approximation":{"description":"DFT approximation","type":"string"},"functional":{"description":"Exchange correlation functional","type":"string"},"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}},"valenceConfiguration":{"type":"array","description":"contains pseudo orbital information, including orbital names and occupations","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic orbital schema","type":"object","properties":{"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalIndex":{"type":"integer","minimum":1},"principalNumber":{"type":"integer","minimum":1,"maximum":7},"angularMomentum":{"type":"integer","minimum":0,"maximum":3},"occupation":{"type":"number","description":"Shell occupation","minimum":0,"maximum":14}}}},"path":{"type":"string","description":"location of the pseudopotential file on filesystem"},"apps":{"type":"array","description":"The names of the simulation engines that can use this pseudopotential, e.g. espresso","items":{"type":"string"}},"filename":{"type":"string","description":"filename of pseudopotential file on filesystem"},"name":{"type":"string","description":"name of the data category","enum":["pseudopotential"]},"cutoffs":{"type":"object","description":"Suggested cutoff values for wave function and charge density.","additionalProperties":false,"properties":{"wavefunction":{"type":"array","description":"Energy cutoff values for wavefunction plane wave expansion.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for energy value with unit corresponding to a specific accuracy level, e.g., used for suggested wavefunction and charge density cutoffs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for scalar values with accuracy levels","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]}},"required":["accuracy_level"]}],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]}},"required":["unit"]}},"density":{"type":"array","description":"Energy cutoff values for charge density plane wave expansion.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for energy value with unit corresponding to a specific accuracy level, e.g., used for suggested wavefunction and charge density cutoffs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for scalar values with accuracy levels","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]}},"required":["accuracy_level"]}],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]}},"required":["unit"]}}}}},"required":["element","type","exchangeCorrelation","source","path","apps","name","hash"]},{"$id":"methods-directory/physical/psp","$schema":"http://json-schema.org/draft-07/schema#","title":"unit method pseudopotential","description":"Core-valence separation by means of pseudopotentials (effective potential)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Pseudopotential category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["psp"]},"subtype":{"enum":["us","nc","nc-fr","paw","coulomb"]}}},"data":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Pseudopotential file","type":"object","properties":{"slug":{"enum":["pseudopotential"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"File data item","type":"object","properties":{"element":{"type":"string","description":"chemical element"},"hash":{"type":"string","description":"MD5 hash of the pseudopotential file"},"type":{"enum":["us","nc","nc-fr","paw","coulomb"]},"source":{"type":"string","description":"explains where this came from"},"version":{"type":"string","description":"explains the version of where this came from"},"exchangeCorrelation":{"type":"object","properties":{"approximation":{"description":"DFT approximation","type":"string"},"functional":{"description":"Exchange correlation functional","type":"string"},"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}},"valenceConfiguration":{"type":"array","description":"contains pseudo orbital information, including orbital names and occupations","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic orbital schema","type":"object","properties":{"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalIndex":{"type":"integer","minimum":1},"principalNumber":{"type":"integer","minimum":1,"maximum":7},"angularMomentum":{"type":"integer","minimum":0,"maximum":3},"occupation":{"type":"number","description":"Shell occupation","minimum":0,"maximum":14}}}},"path":{"type":"string","description":"location of the pseudopotential file on filesystem"},"apps":{"type":"array","description":"The names of the simulation engines that can use this pseudopotential, e.g. espresso","items":{"type":"string"}},"filename":{"type":"string","description":"filename of pseudopotential file on filesystem"},"name":{"type":"string","description":"name of the data category","enum":["pseudopotential"]},"cutoffs":{"type":"object","description":"Suggested cutoff values for wave function and charge density.","additionalProperties":false,"properties":{"wavefunction":{"type":"array","description":"Energy cutoff values for wavefunction plane wave expansion.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for energy value with unit corresponding to a specific accuracy level, e.g., used for suggested wavefunction and charge density cutoffs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for scalar values with accuracy levels","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]}},"required":["accuracy_level"]}],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]}},"required":["unit"]}},"density":{"type":"array","description":"Energy cutoff values for charge density plane wave expansion.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for energy value with unit corresponding to a specific accuracy level, e.g., used for suggested wavefunction and charge density cutoffs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for scalar values with accuracy levels","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]}},"required":["accuracy_level"]}],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]}},"required":["unit"]}}}}},"required":["element","type","exchangeCorrelation","source","path","apps","name","hash"]},"source":{"type":"object","description":"TODO: remove in the future","properties":{"info":{"type":"object"},"type":{"type":"string"}}}}}}},"required":["categories"]},{"$id":"methods-directory/physical/pw","$schema":"http://json-schema.org/draft-07/schema#","title":"unit method plane wave","description":"Approximating the electronic wave function with a plane wave basis","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane wave catgeory schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["pw"]}}}},"required":["categories"]},{"$id":"methods-directory/physical/smearing","$schema":"http://json-schema.org/draft-07/schema#","title":"unit method smearing","description":"Approximating Heaviside step function with smooth function","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Smearing methods category schema","description":"Approximating Heaviside step function with smooth function","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["smearing"]},"subtype":{"enum":["gaussian","marzari-vanderbilt","methfessel-paxton","fermi-dirac"]}}}},"required":["categories"]},{"$id":"methods-directory/physical/tetrahedron","$schema":"http://json-schema.org/draft-07/schema#","title":"unit method tetrahedron","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Tetrahedron method for Brillouin zone integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["tetrahedron"]},"subtype":{"enum":["linear","optimized","bloechl"]}}}},"required":["categories"]},{"$id":"model/categorized-model","$schema":"http://json-schema.org/draft-07/schema#","title":"categorized model","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"model without method schema (base)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"type":"object","description":"Model parameters defined in-place or via model mixins"},"reference":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}},"required":["categories","parameters"]}],"properties":{"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"units":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}}},"required":["units"]}},"required":["method"]},{"$id":"model/mixins/dft/double-hybrid-functional","$schema":"http://json-schema.org/draft-07/schema#","title":"Double hybrid functional mixin","type":"object","properties":{"functional":{"enum":["b2plyp"]}}},{"$id":"model/mixins/dft/enum-options","lda":{"enum":["pz"]},"gga":{"enum":["pbe","pbesol"]},"mgga":{"enum":["scan"]},"hybrid":{"enum":["hse06","b3lyp"]},"doubleHybrid":{"enum":["b2plyp"]}},{"$id":"model/mixins/dft/gga-functional","$schema":"http://json-schema.org/draft-07/schema#","title":"GGA functional mixin","type":"object","properties":{"functional":{"enum":["pbe","pbesol"]}},"additionalProperties":true},{"$id":"model/mixins/dft/hybrid-functional","$schema":"http://json-schema.org/draft-07/schema#","title":"Hybrid functional mixin","type":"object","properties":{"functional":{"enum":["hse06","b3lyp"]}}},{"$id":"model/mixins/dft/lda-functional","$schema":"http://json-schema.org/draft-07/schema#","title":"LDA functional mixin","type":"object","properties":{"functional":{"enum":["pz"]}},"additionalProperties":true},{"$id":"model/mixins/dft/mgga-functional","$schema":"http://json-schema.org/draft-07/schema#","title":"Meta-GGA functional mixin","type":"object","properties":{"functional":{"enum":["scan"]}},"additionalProperties":true},{"$id":"model/mixins/dispersion-correction","$schema":"http://json-schema.org/draft-07/schema#","title":"Dispersion correction mixin","type":"object","properties":{"dispersionCorrection":{"enum":["dft-d2","dft-d3","xdm","ts"]}}},{"$id":"model/mixins/enum-options","spinPolarization":{"enum":["collinear","non-collinear"]},"dispersionCorrection":{"enum":["dft-d2","dft-d3","xdm","ts"]},"hubbardType":{"enum":["u"]}},{"$id":"model/mixins/hubbard","$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard model mixin","type":"object","properties":{"hubbardType":{"enum":["u"]}}},{"$id":"model/mixins/spin-orbit-coupling","$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-orbit coupling mixin","type":"object","properties":{"spinOrbitCoupling":{"type":"boolean"}},"additionalProperties":true},{"$id":"model/mixins/spin-polarization","$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-polarization mixin","type":"object","properties":{"spinPolarization":{"enum":["collinear","non-collinear"]}},"additionalProperties":true},{"$id":"model/model-parameters","$schema":"http://json-schema.org/draft-07/schema#","title":"ModelParameters","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard model mixin","type":"object","properties":{"hubbardType":{"enum":["u"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-polarization mixin","type":"object","properties":{"spinPolarization":{"enum":["collinear","non-collinear"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-orbit coupling mixin","type":"object","properties":{"spinOrbitCoupling":{"type":"boolean"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dispersion correction mixin","type":"object","properties":{"dispersionCorrection":{"enum":["dft-d2","dft-d3","xdm","ts"]}}},{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"LDA functional mixin","type":"object","properties":{"functional":{"enum":["pz"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"GGA functional mixin","type":"object","properties":{"functional":{"enum":["pbe","pbesol"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Meta-GGA functional mixin","type":"object","properties":{"functional":{"enum":["scan"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hybrid functional mixin","type":"object","properties":{"functional":{"enum":["hse06","b3lyp"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Double hybrid functional mixin","type":"object","properties":{"functional":{"enum":["b2plyp"]}}}]}]},{"$id":"model/model-without-method","$schema":"http://json-schema.org/draft-07/schema#","title":"model without method schema (base)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"type":"object","description":"Model parameters defined in-place or via model mixins"},"reference":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}},"required":["categories","parameters"]},{"$id":"model","$schema":"http://json-schema.org/draft-07/schema#","title":"base model","type":"object","properties":{"type":{"description":"general type of the model, eg. `dft`","type":"string"},"subtype":{"description":"general subtype of the model, eg. `lda`","type":"string"},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$id":"models-category/enum-options","physicsBased":{"enum":["pb"]},"statistical":{"enum":["st"]}},{"$id":"models-category/pb/enum-options","quantumMechanical":{"enum":["qm"]}},{"$id":"models-category/pb/qm/abin/enum-options","gwApproximation":{"enum":["gw"]},"gwSubtypes":{"enum":["g0w0","evgw0","evgw"]}},{"$id":"models-category/pb/qm/abin/gw","$schema":"http://json-schema.org/draft-07/schema#","title":"GW category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ab initio category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["abin"]}}}],"properties":{"type":{"enum":["gw"]},"subtype":{"enum":["g0w0","evgw0","evgw"]}}},{"$id":"models-category/pb/qm/abin","$schema":"http://json-schema.org/draft-07/schema#","title":"Ab initio category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["abin"]}}},{"$id":"models-category/pb/qm/dft/enum-options","kohnSham":{"enum":["ksdft"]}},{"$id":"models-category/pb/qm/dft/ksdft/double-hybrid","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT double hybrid functional category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}}],"properties":{"subtype":{"enum":["double-hybrid"]}}},{"$id":"models-category/pb/qm/dft/ksdft/enum-options","localDensityApproximation":{"enum":["lda"]},"generalizedGradientApproximation":{"enum":["gga"]},"metaGGA":{"enum":["mgga"]},"hybrid":{"enum":["hybrid"]},"doubleHybrid":{"enum":["double-hybrid"]}},{"$id":"models-category/pb/qm/dft/ksdft/gga","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA functional category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}}],"properties":{"subtype":{"enum":["gga"]}}},{"$id":"models-category/pb/qm/dft/ksdft/hybrid","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid functional category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}}],"properties":{"subtype":{"enum":["hybrid"]}}},{"$id":"models-category/pb/qm/dft/ksdft/lda","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA functional category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}}],"properties":{"subtype":{"enum":["lda"]}}},{"$id":"models-category/pb/qm/dft/ksdft/mgga","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT meta-GGA functional category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}}],"properties":{"subtype":{"enum":["mgga"]}}},{"$id":"models-category/pb/qm/dft/ksdft","$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}},{"$id":"models-category/pb/qm/dft","$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}},{"$id":"models-category/pb/qm/enum-options","abInitio":{"enum":["abin"]},"densityFunctional":{"enum":["dft"]},"semiEmpirical":{"enum":["semp"]}},{"$id":"models-category/pb/qm/semp","$schema":"http://json-schema.org/draft-07/schema#","title":"Semi-empirical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["semp"]}}},{"$id":"models-category/pb/qm","$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}},{"$id":"models-category/pb","$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}},{"$id":"models-category/st/det/enum-options","machineLearning":{"enum":["ml"]}},{"$id":"models-category/st/det/ml/enum-options","regression":{"enum":["re"]}},{"$id":"models-category/st/det/ml/re","$schema":"http://json-schema.org/draft-07/schema#","title":"regression model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"machine learning model category schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"deterministic model category schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"statistical model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["st"]}}}],"properties":{"tier2":{"enum":["det"]}}}],"properties":{"tier3":{"enum":["ml"]}}}],"properties":{"type":{"enum":["re"]}}},{"$id":"models-category/st/det/ml","$schema":"http://json-schema.org/draft-07/schema#","title":"machine learning model category schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"deterministic model category schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"statistical model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["st"]}}}],"properties":{"tier2":{"enum":["det"]}}}],"properties":{"tier3":{"enum":["ml"]}}},{"$id":"models-category/st/det","$schema":"http://json-schema.org/draft-07/schema#","title":"deterministic model category schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"statistical model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["st"]}}}],"properties":{"tier2":{"enum":["det"]}}},{"$id":"models-category/st/enum-options","deterministic":{"enum":["det"]}},{"$id":"models-category/st","$schema":"http://json-schema.org/draft-07/schema#","title":"statistical model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["st"]}}},{"$id":"models-directory/double-hybrid","$schema":"http://json-schema.org/draft-07/schema#","title":"model double hybrid functional","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"model without method schema (base)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"type":"object","description":"Model parameters defined in-place or via model mixins"},"reference":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}},"required":["categories","parameters"]}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT double hybrid functional category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}}],"properties":{"subtype":{"enum":["double-hybrid"]}}},"parameters":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Double hybrid functional mixin","type":"object","properties":{"functional":{"enum":["b2plyp"]}}},{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-orbit coupling mixin","type":"object","properties":{"spinOrbitCoupling":{"type":"boolean"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dispersion correction mixin","type":"object","properties":{"dispersionCorrection":{"enum":["dft-d2","dft-d3","xdm","ts"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-polarization mixin","type":"object","properties":{"spinPolarization":{"enum":["collinear","non-collinear"]}},"additionalProperties":true}]}]}},"required":["categories","parameters"]},{"$id":"models-directory/gga","$schema":"http://json-schema.org/draft-07/schema#","title":"model generalized gradient approximation","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"model without method schema (base)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"type":"object","description":"Model parameters defined in-place or via model mixins"},"reference":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}},"required":["categories","parameters"]}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA functional category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}}],"properties":{"subtype":{"enum":["gga"]}}},"parameters":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"GGA functional mixin","type":"object","properties":{"functional":{"enum":["pbe","pbesol"]}},"additionalProperties":true},{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-orbit coupling mixin","type":"object","properties":{"spinOrbitCoupling":{"type":"boolean"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dispersion correction mixin","type":"object","properties":{"dispersionCorrection":{"enum":["dft-d2","dft-d3","xdm","ts"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-polarization mixin","type":"object","properties":{"spinPolarization":{"enum":["collinear","non-collinear"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard model mixin","type":"object","properties":{"hubbardType":{"enum":["u"]}}}]}]}},"required":["categories","parameters"]},{"$id":"models-directory/gw","$schema":"http://json-schema.org/draft-07/schema#","title":"model gw approximation","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"model without method schema (base)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"type":"object","description":"Model parameters defined in-place or via model mixins"},"reference":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}},"required":["categories","parameters"]}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"GW category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ab initio category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["abin"]}}}],"properties":{"type":{"enum":["gw"]},"subtype":{"enum":["g0w0","evgw0","evgw"]}}},"parameters":{"allOf":[{"type":"object","properties":{"require":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}},{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"LDA functional mixin","type":"object","properties":{"functional":{"enum":["pz"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"GGA functional mixin","type":"object","properties":{"functional":{"enum":["pbe","pbesol"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Meta-GGA functional mixin","type":"object","properties":{"functional":{"enum":["scan"]}},"additionalProperties":true}]},{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-polarization mixin","type":"object","properties":{"spinPolarization":{"enum":["collinear","non-collinear"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-orbit coupling mixin","type":"object","properties":{"spinOrbitCoupling":{"type":"boolean"}},"additionalProperties":true}]}]}},"required":["categories","parameters"]},{"$id":"models-directory/hybrid","$schema":"http://json-schema.org/draft-07/schema#","title":"model hybrid functional","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"model without method schema (base)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"type":"object","description":"Model parameters defined in-place or via model mixins"},"reference":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}},"required":["categories","parameters"]}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid functional category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}}],"properties":{"subtype":{"enum":["hybrid"]}}},"parameters":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hybrid functional mixin","type":"object","properties":{"functional":{"enum":["hse06","b3lyp"]}}},{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-orbit coupling mixin","type":"object","properties":{"spinOrbitCoupling":{"type":"boolean"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dispersion correction mixin","type":"object","properties":{"dispersionCorrection":{"enum":["dft-d2","dft-d3","xdm","ts"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-polarization mixin","type":"object","properties":{"spinPolarization":{"enum":["collinear","non-collinear"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard model mixin","type":"object","properties":{"hubbardType":{"enum":["u"]}}}]}]}},"required":["categories","parameters"]},{"$id":"models-directory/lda","$schema":"http://json-schema.org/draft-07/schema#","title":"model local density approximation","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"model without method schema (base)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"type":"object","description":"Model parameters defined in-place or via model mixins"},"reference":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}},"required":["categories","parameters"]}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA functional category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}}],"properties":{"subtype":{"enum":["lda"]}}},"parameters":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"LDA functional mixin","type":"object","properties":{"functional":{"enum":["pz"]}},"additionalProperties":true},{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-orbit coupling mixin","type":"object","properties":{"spinOrbitCoupling":{"type":"boolean"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dispersion correction mixin","type":"object","properties":{"dispersionCorrection":{"enum":["dft-d2","dft-d3","xdm","ts"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-polarization mixin","type":"object","properties":{"spinPolarization":{"enum":["collinear","non-collinear"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard model mixin","type":"object","properties":{"hubbardType":{"enum":["u"]}}}]}]}},"required":["categories","parameters"]},{"$id":"models-directory/legacy/any","$schema":"http://json-schema.org/draft-07/schema#","title":"Any model schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"lda"},"functional":{"enum":["pz","pw","vwn","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"gga"},"functional":{"enum":["pbe","pbesol","pw91","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"hybrid"},"functional":{"enum":["b3lyp","hse06","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML model schema","type":"object","properties":{"type":{"enum":["ml"]},"subtype":{"enum":["re"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unknown model schema","type":"object","properties":{"type":{"enum":["unknown"]},"subtype":{"enum":["unknown"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},{"$id":"models-directory/legacy/dft","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT model schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"lda"},"functional":{"enum":["pz","pw","vwn","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"gga"},"functional":{"enum":["pbe","pbesol","pw91","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"hybrid"},"functional":{"enum":["b3lyp","hse06","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]}],"discriminator":{"propertyName":"subtype"}},{"$id":"models-directory/legacy/dft-gga","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"gga"},"functional":{"enum":["pbe","pbesol","pw91","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$id":"models-directory/legacy/dft-hybrid","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"hybrid"},"functional":{"enum":["b3lyp","hse06","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$id":"models-directory/legacy/dft-lda","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"lda"},"functional":{"enum":["pz","pw","vwn","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$id":"models-directory/legacy/ml","$schema":"http://json-schema.org/draft-07/schema#","title":"ML model schema","type":"object","properties":{"type":{"enum":["ml"]},"subtype":{"enum":["re"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$id":"models-directory/legacy/unknown","$schema":"http://json-schema.org/draft-07/schema#","title":"Unknown model schema","type":"object","properties":{"type":{"enum":["unknown"]},"subtype":{"enum":["unknown"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$id":"models-directory/mgga","$schema":"http://json-schema.org/draft-07/schema#","title":"model meta generalized gradient approximation","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"model without method schema (base)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"type":"object","description":"Model parameters defined in-place or via model mixins"},"reference":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}},"required":["categories","parameters"]}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT meta-GGA functional category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}}],"properties":{"subtype":{"enum":["mgga"]}}},"parameters":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Meta-GGA functional mixin","type":"object","properties":{"functional":{"enum":["scan"]}},"additionalProperties":true},{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-orbit coupling mixin","type":"object","properties":{"spinOrbitCoupling":{"type":"boolean"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dispersion correction mixin","type":"object","properties":{"dispersionCorrection":{"enum":["dft-d2","dft-d3","xdm","ts"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-polarization mixin","type":"object","properties":{"spinPolarization":{"enum":["collinear","non-collinear"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard model mixin","type":"object","properties":{"hubbardType":{"enum":["u"]}}}]}]}},"required":["categories","parameters"]},{"$id":"models-directory/re","$schema":"http://json-schema.org/draft-07/schema#","title":"model regression","description":"machine learning model type/subtype schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"model without method schema (base)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"type":"object","description":"Model parameters defined in-place or via model mixins"},"reference":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}},"required":["categories","parameters"]}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"machine learning model category schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"deterministic model category schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"statistical model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["st"]}}}],"properties":{"tier2":{"enum":["det"]}}}],"properties":{"tier3":{"enum":["ml"]}}}],"properties":{"type":{"enum":["re"]}}},"parameters":{"type":"object"}},"required":["categories","parameters"]},{"$id":"project","$schema":"http://json-schema.org/draft-07/schema#","title":"project schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable has metadata in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}}]}],"properties":{"gid":{"description":"project GID","type":"number"},"clusterBasedChargeRates":{"description":"charge rates info for project","type":"array","items":{"type":"object","properties":{"rate":{"type":"number"},"timestamp":{"type":"number"},"hostname":{"type":"string"}}}},"isExternal":{"type":"boolean","default":false}}},{"$id":"properties-directory/derived-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},{"$id":"properties-directory/electronic-configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"electronic configuration schema","type":"object","properties":{"charge":{"description":"total charge of the molecular system","type":"integer"},"multiplicity":{"description":"calculated as 2S+1, with S is the total spin angular momentum","type":"integer"}}},{"$id":"properties-directory/elemental/atomic-radius","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic radius","description":"atomic radius","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["atomic_radius"]},"units":{"enum":["km","m","cm","mm","um","nm","angstrom","a.u.","bohr","pm"]}},"required":["name"]},{"$id":"properties-directory/elemental/electronegativity","$schema":"http://json-schema.org/draft-07/schema#","title":"electronegativity","description":"electronegativity for the element (Pauling scale)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["electronegativity"]}},"required":["name"]},{"$id":"properties-directory/elemental/ionization-potential","$schema":"http://json-schema.org/draft-07/schema#","title":"Ionization potential elemental property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["ionization_potential"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}},"required":["name","units"]},{"$id":"properties-directory/enum-options","definitions":{"ExternalSource":{"type":"string","enum":["ICSD","MaterialsProject","MaterialsProjectLegacy"]},"PropertyType":{"type":"string","enum":["scalar","non-scalar","tensor","object","array-of-objects"]},"ScalarPropertyEnum":{"type":"string","enum":["defect_formation_energy","fermi_energy","formation_energy","homo_energy","ionization_potential","lumo_energy","pressure","reaction_energy_barrier","surface_energy","interfacial_energy","thermal_correction_to_energy","thermal_correction_to_enthalpy","total_energy","total_force","valence_band_offset","zero_point_energy"]},"NonScalarPropertyEnum":{"type":"string","enum":["average_potential_profile","band_gaps","band_structure","charge_density_profile","convergence_electronic","convergence_ionic","density_of_states","dielectric_tensor","file_content","final_structure","hubbard_u","hubbard_v","hubbard_v_nn","is_relaxed","jupyter_notebook_endpoint","phonon_dispersions","phonon_dos","potential_profile","reaction_energy_profile","wavefunction_amplitude","workflow:pyml_predict"]},"TensorPropertyEnum":{"type":"string","enum":["atomic_forces","magnetic_moments","stress_tensor"]},"ObjectPropertyEnum":{"type":"string","enum":["total_energy_contributions"]},"ArrayOfObjectsPropertyEnum":{"type":"string","enum":["formation_energy_contributions"]},"ProtoPropertyEnum":{"type":"string","enum":["atomic_constraints","boundary_conditions"]},"MetaPropertyEnum":{"type":"string","enum":["pseudopotential"]}}},{"$id":"properties-directory/jupyter-notebook-endpoint","$schema":"http://json-schema.org/draft-07/schema#","title":"Jupyter notebook endpoint property schema","type":"object","properties":{"name":{"enum":["jupyter_notebook_endpoint"]},"host":{"type":"string"},"port":{"type":"number"},"token":{"type":"string"}},"required":["name","host","port","token"]},{"$id":"properties-directory/non-scalar/average-potential-profile","$schema":"http://json-schema.org/draft-07/schema#","title":"Average potential profile property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"properties":{"label":{"enum":["z coordinate"]},"units":{"enum":["km","m","cm","mm","um","nm","angstrom","a.u.","bohr","pm"]}}},"yAxis":{"properties":{"label":{"enum":["energy"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},"name":{"enum":["average_potential_profile"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/band-gaps","$schema":"http://json-schema.org/draft-07/schema#","title":"Band gaps property schema","description":"contains band gap values","type":"object","properties":{"name":{"enum":["band_gaps"]},"values":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"band gap schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"kpointConduction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"kpoint schema","description":"A k-point is a point in reciprocal space of a crystal.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}]},"kpointValence":{"$schema":"http://json-schema.org/draft-07/schema#","title":"kpoint schema","description":"A k-point is a point in reciprocal space of a crystal.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}]},"eigenvalueConduction":{"description":"eigenvalue at k-point in conduction band","type":"number"},"eigenvalueValence":{"description":"eigenvalue at k-point in valence band","type":"number"},"spin":{"type":"number"},"type":{"type":"string","enum":["direct","indirect"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}},"required":["type"]}},"eigenvalues":{"type":"array","items":{"type":"object","properties":{"kpoint":{"$schema":"http://json-schema.org/draft-07/schema#","title":"kpoint schema","description":"A k-point is a point in reciprocal space of a crystal.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}]},"weight":{"type":"number"},"eigenvalues":{"type":"array","items":{"type":"object","properties":{"spin":{"type":"number"},"energies":{"type":"array"},"occupations":{"type":"array"}}}}}}}},"required":["name","values"]},{"$id":"properties-directory/non-scalar/band-structure","$schema":"http://json-schema.org/draft-07/schema#","title":"Band structure property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["kpoints"]},"units":{"enum":["crystal","cartesian"],"default":"crystal"}}},"yAxis":{"type":"object","properties":{"label":{"enum":["energy"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},"name":{"enum":["band_structure"]},"spin":{"description":"spin of each band","type":"array","items":{"type":"number","enum":[0.5,-0.5]}}},"required":["name","spin","xAxis","yAxis"]},{"$id":"properties-directory/non-scalar/charge-density-profile","$schema":"http://json-schema.org/draft-07/schema#","title":"Charge density profile property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["z coordinate"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["charge density"]},"units":{"enum":["e/A"]}}},"name":{"enum":["charge_density_profile"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/density-of-states","$schema":"http://json-schema.org/draft-07/schema#","title":"Density of states property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["energy"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["density of states"]},"units":{"enum":["states/unitcell"]}}},"name":{"enum":["density_of_states"]},"legend":{"type":"array","items":{"type":"object","properties":{"element":{"description":"chemical element","type":"string"},"index":{"description":"index inside sub-array of atoms of the same element type","type":"integer"},"electronicState":{"description":"electronic character and shell of PDOS, such as `1s` or `s`, or `total`","type":"string","pattern":"^([1-5]{1})?(s|p|d|f|g).*$"},"spin":{"description":"spin of the electronic state","type":"number","enum":[0.5,-0.5]}}}}},"required":["name","legend"]},{"$id":"properties-directory/non-scalar/dielectric-tensor","$schema":"http://json-schema.org/draft-07/schema#","title":"dielectric tensor property schema","description":"The real and imaginary parts of the diagonal elements of the dieletric tensor","type":"object","properties":{"name":{"enum":["dielectric_tensor"]},"values":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dielectric Tensor","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"","description":"Schema for a function of frequency yielding a nx3 matrix","type":"object","properties":{"frequencies":{"description":"Frequencies","type":"array","items":{"type":"number"}},"components":{"description":"Matrix with 3 columns, e.g. x, y, z","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}],"properties":{"part":{"description":"Real or imaginary part of the dielectric tensor component","type":"string","enum":["real","imaginary"]},"spin":{"type":"number"}},"required":["part","frequencies","components"]}}},"required":["name","values"]},{"$id":"properties-directory/non-scalar/file-content","$schema":"http://json-schema.org/draft-07/schema#","title":"File content property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"name":{"enum":["file_content"]},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string","enum":["image","text","csv"],"$comment":"isGenerative:true"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}}},"required":["name","filetype","objectData"]},{"$id":"properties-directory/non-scalar/final-structure","$schema":"http://json-schema.org/draft-07/schema#","title":"Final structure property schema","type":"object","properties":{"name":{"enum":["final_structure"]},"isRelaxed":{"type":"boolean"},"materialId":{"description":"Material's identity","type":"string"}},"required":["name","isRelaxed","materialId"]},{"$id":"properties-directory/non-scalar/formation-energy-contributions","$schema":"http://json-schema.org/draft-07/schema#","title":"Formation energy contributions property schema","description":"Elemental reference total energies used to calculate formation energy.","type":"object","properties":{"name":{"enum":["formation_energy_contributions"]},"values":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Formation energy contribution schema","description":"Total energy contribution of one material used in formation energy calculation.","type":"object","properties":{"formula":{"description":"formula or label for the material used in the formation energy calculation","type":"string"},"n_atoms":{"description":"number of atoms in the material","type":"integer"},"is_elemental":{"description":"whether the material is an elemental reference","type":"boolean"},"total_energy":{"description":"total energy of the material","type":"number"},"total_energy_per_atom":{"description":"total energy per atom of the material","type":"number"},"precision_value":{"description":"precision value for the total energy property","type":"number","default":-1},"precision_metric":{"description":"metric used to report total energy precision","type":"string","enum":["unknown","KPPRA","spacing"],"default":"unknown"}},"required":["formula","n_atoms","is_elemental","total_energy","total_energy_per_atom","precision_metric","precision_value"]}}},"required":["name","values"]},{"$id":"properties-directory/non-scalar/hubbard-u","$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U parameters property schema","description":"Hubbard U values in eV corresponding to atomic species, orbital and site number.","type":"object","properties":{"name":{"enum":["hubbard_u"]},"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital numeric","description":"Atomic properties per orbital pair with numeric value e.g., Hubbard V parameters.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital","description":"Atomic properties per orbital e.g., Hubbard U parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data numeric properties","description":"Numeric value specific to atomic data","type":"object","properties":{"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}]}],"required":["id","atomicSpecies","orbitalName","value"]}}},"required":["name","values","units"]},{"$id":"properties-directory/non-scalar/hubbard-v","$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V parameters property schema","description":"Hubbard V values corresponding to atomic pairs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard parameters reusable schema","description":"Common properties for hubbard parameter schemas","type":"object","properties":{"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair numeric","description":"Atomic properties per orbital pair with numeric value e.g., Hubbard V parameters.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair","description":"Atomic properties per orbital pair e.g., Hubbard V parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"id2":{"type":"integer","description":"Site number or index in the lattice of second site"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"atomicSpecies2":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co2, O"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalName2":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"distance":{"type":"number","description":"Distance between two sites in Bohr."}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data numeric properties","description":"Numeric value specific to atomic data","type":"object","properties":{"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}]}],"required":["id","id2","atomicSpecies","atomicSpecies2","value"]}}},"required":["values","units"]}],"properties":{"name":{"enum":["hubbard_v"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/hubbard-v-nn","$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V NN parameters property schema","description":"Hubbard V value in eV for nearest neighbors used in hp.x output parsing","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard parameters reusable schema","description":"Common properties for hubbard parameter schemas","type":"object","properties":{"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair numeric","description":"Atomic properties per orbital pair with numeric value e.g., Hubbard V parameters.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair","description":"Atomic properties per orbital pair e.g., Hubbard V parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"id2":{"type":"integer","description":"Site number or index in the lattice of second site"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"atomicSpecies2":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co2, O"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalName2":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"distance":{"type":"number","description":"Distance between two sites in Bohr."}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data numeric properties","description":"Numeric value specific to atomic data","type":"object","properties":{"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}]}],"required":["id","id2","atomicSpecies","atomicSpecies2","value"]}}},"required":["values","units"]}],"properties":{"name":{"enum":["hubbard_v_nn"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/is-relaxed","$schema":"http://json-schema.org/draft-07/schema#","title":"Is relaxed property schema","type":"object","properties":{"name":{"enum":["is_relaxed"]},"value":{"type":"boolean"},"materialId":{"description":"Material's identity","type":"string"}},"required":["name","value","materialId"]},{"$id":"properties-directory/non-scalar/phonon-dispersions","$schema":"http://json-schema.org/draft-07/schema#","title":"Phonon band structure property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["qpoints"]},"units":{"enum":["crystal","cartesian"],"default":"crystal"}}},"yAxis":{"type":"object","properties":{"label":{"enum":["frequency"]},"units":{"enum":["cm-1","THz","meV"]}}},"name":{"enum":["phonon_dispersions"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/phonon-dos","$schema":"http://json-schema.org/draft-07/schema#","title":"Phonon density of states property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["frequency"]},"units":{"enum":["cm-1","THz","meV"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["Phonon DOS"]},"units":{"enum":["states/cm-1","states/THz","states/meV"]}}},"name":{"enum":["phonon_dos"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/potential-profile","$schema":"http://json-schema.org/draft-07/schema#","title":"Potential profile property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["z coordinate"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["energy"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},"name":{"enum":["potential_profile"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/reaction-energy-profile","$schema":"http://json-schema.org/draft-07/schema#","title":"Reaction energy profile property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["reaction coordinate"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["energy"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},"name":{"enum":["reaction_energy_profile"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/stress-tensor","$schema":"http://json-schema.org/draft-07/schema#","title":"Stress tensor property schema","type":"object","properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"name":{"enum":["stress_tensor"]},"units":{"enum":["kbar","pa"]}},"required":["name","value","units"]},{"$id":"properties-directory/non-scalar/total-energy-contributions","$schema":"http://json-schema.org/draft-07/schema#","title":"Total energy contributions property schema","type":"object","properties":{"temperatureEntropy":{"description":"product of temperature and configurational entropy","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["temperature_entropy"]}}},"harris_foulkes":{"description":"non self-consitent energy based on an input charge density","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["harris_foulkes"]}}},"smearing":{"description":"smearing energy","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["smearing"]}}},"one_electron":{"description":"kinetic + pseudopotential energy","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["one_electron"]}}},"hartree":{"description":"energy due to coulomb potential","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["hartree"]}}},"exchange":{"description":"exchange energy","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["exchange"]}}},"exchange_correlation":{"description":"exchange and correlation energy per particle","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["exchange_correlation"]}}},"ewald":{"description":"summation of interaction energies at long length scales due to coloumbic interactions","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["ewald"]}}},"alphaZ":{"description":"divergent electrostatic ion interaction in compensating electron gas","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["alphaZ"]}}},"atomicEnergy":{"description":"kinetic energy of wavefunctions in the atomic limit","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["atomic_energy"]}}},"eigenvalues":{"description":"sum of one electron energies of kinetic, electrostatic, and exchange correlation","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["eigenvalues"]}}},"PAWDoubleCounting2":{"description":"double counting correction 2","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["PAW_double-counting_correction_2"]}}},"PAWDoubleCounting3":{"description":"double counting correction 3","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["PAW_double-counting_correction_3"]}}},"hartreeFock":{"description":"hartree-fock contribution","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["hartree_fock"]}}},"name":{"enum":["total_energy_contributions"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/vibrational-spectrum","$schema":"http://json-schema.org/draft-07/schema#","title":"Vibrational spectrum property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["frequency","wavenumber"]},"units":{"enum":["cm-1","THz","meV"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["Intensity","Absorbance","Absorption coefficient"]},"units":{"enum":["(debye/angstrom)^2","km/mol","m/mol","a.u."]}}},"name":{"enum":["vibrational_spectrum"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/wavefunction-amplitude","$schema":"http://json-schema.org/draft-07/schema#","title":"Wavefunction amplitude property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["coordinate"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["amplitude"]}}},"name":{"enum":["wavefunction_amplitude"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/workflow","$schema":"http://json-schema.org/draft-07/schema#","title":"Workflow property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"base workflow schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this workflow (TODO: add enums)","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"isUsingDataset":{"description":"Whether to use the dataset tab in the job designer. Mutually exclusive with using the materials tab.","type":"boolean"},"isMultiMaterial":{"description":"Defines whether the workflow is for a multi-material simulation","type":"boolean"},"subworkflows":{"description":"Array of subworkflows. Subworkflow can be an instance of workflow to allow for nesting","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Mixin Schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this subworkflow","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]},"units":{"description":"Contains the Units of the subworkflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow subworkflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","properties":{"type":{"const":"io"},"subtype":{"enum":["input","output","dataFrame"]},"source":{"enum":["api","object_storage"]},"input":{"type":"array","items":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]}],"discriminator":{"propertyName":"type"}}}},"required":["subtype","source","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","properties":{"type":{"const":"condition"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"statement":{"description":"Condition statement. e.g. 'abs(x-total_energy) < 1e-5'","type":"string"},"then":{"description":"Flowchart ID reference for `then` part of the condition.","type":"string"},"else":{"description":"Flowchart ID reference for `else` part of the condition.","type":"string"},"maxOccurrences":{"description":"Maximum occurrence of the condition, usable for loops.","type":"integer"},"throwException":{"description":"Throw exception on reaching to maximum occurence.","type":"boolean"}},"required":["input","statement","then","else","maxOccurrences"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","properties":{"type":{"const":"assertion"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}},"required":["name","statement"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"scope schema","type":"object","properties":{"scope":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","properties":{"type":{"const":"assignment"},"input":{"description":"Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"operand":{"description":"Name of the global variable. e.g. 'x'","type":"string"},"value":{"description":"Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}},"required":["name","operand","value"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"model":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Any model schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"lda"},"functional":{"enum":["pz","pw","vwn","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"gga"},"functional":{"enum":["pbe","pbesol","pw91","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"hybrid"},"functional":{"enum":["b3lyp","hse06","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML model schema","type":"object","properties":{"type":{"enum":["ml"]},"subtype":{"enum":["re"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unknown model schema","type":"object","properties":{"type":{"enum":["unknown"]},"subtype":{"enum":["unknown"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}},"required":["model","properties","application","units"]}]}},"units":{"description":"Contains the Units of the Workflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit mixin schema","type":"object","properties":{"type":{"const":"map"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","properties":{"target":{"description":"Name of the target variable to substitute using the values below. e.g. K_POINTS","type":"string"},"scope":{"description":"Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.","type":"string"},"name":{"description":"Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.","type":"string"},"values":{"description":"Sequence of values for the target Jinja variable. Optional if `scope` and `name` are given. This can be used for map-reduce type parallel execution","type":"array","items":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"object"}]}},"useValues":{"type":"boolean"}},"required":["target"]}},"required":["input","workflowId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit mixin schema","type":"object","properties":{"type":{"const":"reduce"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","properties":{"operation":{"description":"reduce operation, e.g. aggregate","type":"string"},"arguments":{"description":"arguments which are passed to reduce operation function","type":"array","items":{"type":"string"}}},"required":["operation","arguments"]}}},"required":["mapFlowchartId","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"application":{"description":"information about the main application used for workflow categorization by application in standata.","type":"object","properties":{"name":{"description":"name of the application","type":"string"}}},"tags":{"description":"tags for the workflow","type":"array","items":{"type":"string"}}},"required":["properties","units","subworkflows"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Description schema","type":"object","properties":{"description":{"description":"entity description","type":"string"},"descriptionObject":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"workflows":{"description":"Array of workflows with the same schema as the current one.","type":"array","items":{"type":"object"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]}},"required":["workflows"]}],"properties":{"name":{"enum":["workflow:pyml_predict"]}},"required":["name"]},{"$id":"properties-directory/reusable/hubbard-parameters","$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard parameters reusable schema","description":"Common properties for hubbard parameter schemas","type":"object","properties":{"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair numeric","description":"Atomic properties per orbital pair with numeric value e.g., Hubbard V parameters.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair","description":"Atomic properties per orbital pair e.g., Hubbard V parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"id2":{"type":"integer","description":"Site number or index in the lattice of second site"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"atomicSpecies2":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co2, O"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalName2":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"distance":{"type":"number","description":"Distance between two sites in Bohr."}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data numeric properties","description":"Numeric value specific to atomic data","type":"object","properties":{"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}]}],"required":["id","id2","atomicSpecies","atomicSpecies2","value"]}}},"required":["values","units"]},{"$id":"properties-directory/scalar/defect-formation-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Defect formation energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["defect_formation_energy"]}},"required":["name"]},{"$id":"properties-directory/scalar/electron-affinity","$schema":"http://json-schema.org/draft-07/schema#","title":"Electron affinity property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["electron_affinity"]}},"required":["name"]},{"$id":"properties-directory/scalar/fermi-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Fermi energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["fermi_energy"]}},"required":["name"]},{"$id":"properties-directory/scalar/formation-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Formation energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["formation_energy"]}},"required":["name","units"]},{"$id":"properties-directory/scalar/homo-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"HOMO energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["homo_energy"]}},"required":["name"]},{"$id":"properties-directory/scalar/interfacial-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Interfacial energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["interfacial_energy"]}},"required":["name"]},{"$id":"properties-directory/scalar/ionization-potential","$schema":"http://json-schema.org/draft-07/schema#","title":"Ionization potential scalar property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["ionization_potential"]}},"required":["name"]},{"$id":"properties-directory/scalar/lumo-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"LUMO energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["lumo_energy"]}},"required":["name"]},{"$id":"properties-directory/scalar/pressure","$schema":"http://json-schema.org/draft-07/schema#","title":"Pressure property schema","description":"average pressure in unit cell","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["pressure"]},"units":{"enum":["kbar","pa"]}},"required":["name","units"]},{"$id":"properties-directory/scalar/reaction-energy-barrier","$schema":"http://json-schema.org/draft-07/schema#","title":"Reaction energy barrier property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["reaction_energy_barrier"]}},"required":["name"]},{"$id":"properties-directory/scalar/surface-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Surface energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["surface_energy"]}},"required":["name"]},{"$id":"properties-directory/scalar/thermal-correction-to-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Thermal correction to energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["thermal_correction_to_energy"]}},"required":["name"]},{"$id":"properties-directory/scalar/thermal-correction-to-enthalpy","$schema":"http://json-schema.org/draft-07/schema#","title":"Thermal correction to enthalpy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["thermal_correction_to_enthalpy"]}},"required":["name"]},{"$id":"properties-directory/scalar/total-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Total energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["total_energy"]}},"required":["name","units"]},{"$id":"properties-directory/scalar/total-force","$schema":"http://json-schema.org/draft-07/schema#","title":"Total forces property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["total_force"]},"units":{"enum":["eV/bohr","eV/angstrom","Ry/a.u.","newton","kg*m/s^2","eV/a.u."]}},"required":["name","units"]},{"$id":"properties-directory/scalar/valence-band-offset","$schema":"http://json-schema.org/draft-07/schema#","title":"Valence band offset property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["valence_band_offset"]}},"required":["name"]},{"$id":"properties-directory/scalar/zero-point-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Zero point energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["zero_point_energy"]}},"required":["name"]},{"$id":"properties-directory/structural/atomic-forces","$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic forces property schema","description":"coordinates of atoms by ids, vector, unitless","type":"object","properties":{"name":{"enum":["atomic_forces"]},"values":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vectors schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vector schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"enum":["eV/bohr","eV/angstrom","Ry/a.u.","newton","kg*m/s^2","eV/a.u."]}},"required":["name","units","values"]},{"$id":"properties-directory/structural/basis/atomic-constraint","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraint schema","description":"constraint of atoms by ids, used to constraint the position etc.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector boolean 3d schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 boolean elements schema","type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}]}}},{"$id":"properties-directory/structural/basis/atomic-constraints","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraints schema","description":"atomic constraints schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraint schema","description":"constraint of atoms by ids, used to constraint the position etc.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector boolean 3d schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 boolean elements schema","type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}]}}}},{"$id":"properties-directory/structural/basis/atomic-constraints-property","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraints property schema","description":"atomic constraints property schema (as stored in a database)","type":"object","properties":{"name":{"enum":["atomic_constraints"]},"values":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraints schema","description":"atomic constraints schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraint schema","description":"constraint of atoms by ids, used to constraint the position etc.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector boolean 3d schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 boolean elements schema","type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}]}}}}},"required":["name","values"]},{"$id":"properties-directory/structural/basis/atomic-coordinate","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}},{"$id":"properties-directory/structural/basis/atomic-coordinates","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},{"$id":"properties-directory/structural/basis/atomic-element","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}},{"$id":"properties-directory/structural/basis/atomic-elements","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},{"$id":"properties-directory/structural/basis/atomic-label","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}},{"$id":"properties-directory/structural/basis/atomic-labels","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}},{"$id":"properties-directory/structural/basis/bonds","$schema":"http://json-schema.org/draft-07/schema#","title":"bonds schema","type":"array","items":{"type":"object","properties":{"atomPair":{"description":"indices of the two connected atoms","type":"array","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}}],"minItems":2,"maxItems":2},"bondType":{"type":"string","enum":["single","double","triple","quadruple","aromatic","tautomeric","dative","other"]}}},"uniqueItems":true},{"$id":"properties-directory/structural/basis/boundary-conditions","$schema":"http://json-schema.org/draft-07/schema#","title":"boundary conditions property schema","description":"boundary conditions property schema (as stored in a database)","type":"object","properties":{"name":{"enum":["boundary_conditions"]},"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["name","type","offset"]},{"$id":"properties-directory/structural/basis/units-enum","$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},{"$id":"properties-directory/structural/basis","$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},{"$id":"properties-directory/structural/basis-constrained","$schema":"http://json-schema.org/draft-07/schema#","title":"basis constrained schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},{"properties":{"constraints":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraints schema","description":"atomic constraints schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraint schema","description":"constraint of atoms by ids, used to constraint the position etc.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector boolean 3d schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 boolean elements schema","type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}]}}}}},"required":["constraints"]}]},{"$id":"properties-directory/structural/density","$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$id":"properties-directory/structural/elemental-ratio","$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$id":"properties-directory/structural/inchi","$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$id":"properties-directory/structural/inchi-key","$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}},{"$id":"properties-directory/structural/lattice/type-enum","$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},{"$id":"properties-directory/structural/lattice/type-extended-enum","$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type extended enum","type":"string","enum":["BCC","BCT-1","BCT-2","CUB","FCC","HEX","MCL","MCLC-1","MCLC-2","MCLC-3","MCLC-4","MCLC-5","ORC","ORCC","ORCF-1","ORCF-2","ORCF-3","ORCI","RHL-1","RHL-2","TET","TRI_1a","TRI_1b","TRI_2a","TRI_2b"]},{"$id":"properties-directory/structural/lattice/units/angle-enum","$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]},{"$id":"properties-directory/structural/lattice/units/length-enum","$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},{"$id":"properties-directory/structural/lattice/units","$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}},{"$id":"properties-directory/structural/lattice/vectors/units-enum","$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},{"$id":"properties-directory/structural/lattice/vectors","$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},{"$id":"properties-directory/structural/lattice","$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},{"$id":"properties-directory/structural/magnetic-moments","$schema":"http://json-schema.org/draft-07/schema#","title":"Magnetic moments property schema","description":"magnetization on each ion","type":"object","properties":{"name":{"enum":["magnetic_moments"]},"values":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vectors schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vector schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"enum":["uB"]}},"required":["name","values","units"]},{"$id":"properties-directory/structural/molecular-pattern","$schema":"http://json-schema.org/draft-07/schema#","title":"molecular pattern schema","type":"array","items":{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"functional group pattern schema","type":"object","properties":{"name":{"enum":["functional_group"]},"atoms":{"type":"array","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}}],"items":{"type":"object","properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"}}}},"SMARTS":{"description":"SMARTS string for classification of FG; https://en.wikipedia.org/wiki/SMILES_arbitrary_target_specification","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"ring pattern schema","type":"object","properties":{"name":{"enum":["ring"]},"atoms":{"type":"array","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}}],"items":{"type":"object","properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"}}}},"isAromatic":{"type":"boolean"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"special bond pattern schema","type":"object","description":"Any bonding interaction that cannot be described by simple 2-atom picture, e.g. 3-center-2-electron bond in diborane","properties":{"name":{"enum":["special_bond"]},"atoms":{"type":"array","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}}],"items":{"type":"object","properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"}}}}},"required":["name"]}]}},{"$id":"properties-directory/structural/p-norm","$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$id":"properties-directory/structural/patterns/functional-group","$schema":"http://json-schema.org/draft-07/schema#","title":"functional group pattern schema","type":"object","properties":{"name":{"enum":["functional_group"]},"atoms":{"type":"array","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}}],"items":{"type":"object","properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"}}}},"SMARTS":{"description":"SMARTS string for classification of FG; https://en.wikipedia.org/wiki/SMILES_arbitrary_target_specification","type":"string"}},"required":["name"]},{"$id":"properties-directory/structural/patterns/ring","$schema":"http://json-schema.org/draft-07/schema#","title":"ring pattern schema","type":"object","properties":{"name":{"enum":["ring"]},"atoms":{"type":"array","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}}],"items":{"type":"object","properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"}}}},"isAromatic":{"type":"boolean"}},"required":["name"]},{"$id":"properties-directory/structural/patterns/special-bond","$schema":"http://json-schema.org/draft-07/schema#","title":"special bond pattern schema","type":"object","description":"Any bonding interaction that cannot be described by simple 2-atom picture, e.g. 3-center-2-electron bond in diborane","properties":{"name":{"enum":["special_bond"]},"atoms":{"type":"array","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}}],"items":{"type":"object","properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"}}}}},"required":["name"]},{"$id":"properties-directory/structural/symmetry","$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$id":"properties-directory/structural/volume","$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$id":"properties-directory/workflow/convergence/electronic","$schema":"http://json-schema.org/draft-07/schema#","title":"Convergence electronic property schema","type":"object","properties":{"name":{"enum":["convergence_electronic"]},"units":{"enum":["eV","Ry","hartree"]},"data":{"type":"array","items":{"type":"array","items":{"type":"number"}}}},"required":["data","name","units"]},{"$id":"properties-directory/workflow/convergence/ionic","$schema":"http://json-schema.org/draft-07/schema#","title":"Convergence ionic property schema","type":"object","properties":{"name":{"enum":["convergence_ionic"]},"tolerance":{"description":"for ionic convergence tolerance shows force tolerance"},"units":{"description":"units for force tolerance","enum":["eV"]},"data":{"type":"array","description":"energetic and structural information","items":{"type":"object","properties":{"energy":{"description":"converged electronic energy for this structure (last in `electronic`)","type":"number"},"structure":{"description":"TODO: structural information at each step to be here","type":"object"},"electronic":{"description":"data about electronic at this ionic step","type":"object","properties":{"units":{"description":"units for force tolerance","enum":["eV","Ry","hartree"]},"data":{"type":"array","items":{"type":"number"}}}}},"required":["energy"]}}},"required":["data","name","units"]},{"$id":"properties-directory/workflow/convergence/kpoint","$schema":"http://json-schema.org/draft-07/schema#","title":"convergence schema for converging a property wrt kpoints","type":"object","properties":{"tolerance":{"description":"tolerance for the property under investigation"},"units":{"description":"units for the property under investigation","type":"string"},"property":{"description":"name of the property under investigation","type":"string"},"data":{"type":"array","description":"kpoint grid and property information","items":{"type":"object","properties":{"value":{"description":"value of the property at this step"},"grid":{"description":"information about the kpoint grid","type":"object"},"spacing":{"description":"optional kpoint spacing information","type":"number"}},"required":["value","grid"]}}},"required":["tolerance","units","data"]},{"$id":"property/holder","$schema":"http://json-schema.org/draft-07/schema#","title":"Property holder schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}}],"properties":{"group":{"description":"property group, e.g. qe:dft:gga:pbe","type":"string"},"data":{"description":"container of the information, specific to each property","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Valence band offset property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["valence_band_offset"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Zero point energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["zero_point_energy"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Pressure property schema","description":"average pressure in unit cell","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["pressure"]},"units":{"enum":["kbar","pa"]}},"required":["name","units"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reaction energy barrier property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["reaction_energy_barrier"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Surface energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["surface_energy"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Interfacial energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["interfacial_energy"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Defect formation energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["defect_formation_energy"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Thermal correction to energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["thermal_correction_to_energy"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Thermal correction to enthalpy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["thermal_correction_to_enthalpy"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Total energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["total_energy"]}},"required":["name","units"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Total forces property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["total_force"]},"units":{"enum":["eV/bohr","eV/angstrom","Ry/a.u.","newton","kg*m/s^2","eV/a.u."]}},"required":["name","units"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Fermi energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["fermi_energy"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Formation energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["formation_energy"]}},"required":["name","units"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"HOMO energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["homo_energy"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ionization potential scalar property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["ionization_potential"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"LUMO energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["lumo_energy"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stress tensor property schema","type":"object","properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"name":{"enum":["stress_tensor"]},"units":{"enum":["kbar","pa"]}},"required":["name","value","units"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Band gaps property schema","description":"contains band gap values","type":"object","properties":{"name":{"enum":["band_gaps"]},"values":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"band gap schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"kpointConduction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"kpoint schema","description":"A k-point is a point in reciprocal space of a crystal.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}]},"kpointValence":{"$schema":"http://json-schema.org/draft-07/schema#","title":"kpoint schema","description":"A k-point is a point in reciprocal space of a crystal.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}]},"eigenvalueConduction":{"description":"eigenvalue at k-point in conduction band","type":"number"},"eigenvalueValence":{"description":"eigenvalue at k-point in valence band","type":"number"},"spin":{"type":"number"},"type":{"type":"string","enum":["direct","indirect"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}},"required":["type"]}},"eigenvalues":{"type":"array","items":{"type":"object","properties":{"kpoint":{"$schema":"http://json-schema.org/draft-07/schema#","title":"kpoint schema","description":"A k-point is a point in reciprocal space of a crystal.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}]},"weight":{"type":"number"},"eigenvalues":{"type":"array","items":{"type":"object","properties":{"spin":{"type":"number"},"energies":{"type":"array"},"occupations":{"type":"array"}}}}}}}},"required":["name","values"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Band structure property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["kpoints"]},"units":{"enum":["crystal","cartesian"],"default":"crystal"}}},"yAxis":{"type":"object","properties":{"label":{"enum":["energy"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},"name":{"enum":["band_structure"]},"spin":{"description":"spin of each band","type":"array","items":{"type":"number","enum":[0.5,-0.5]}}},"required":["name","spin","xAxis","yAxis"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Phonon band structure property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["qpoints"]},"units":{"enum":["crystal","cartesian"],"default":"crystal"}}},"yAxis":{"type":"object","properties":{"label":{"enum":["frequency"]},"units":{"enum":["cm-1","THz","meV"]}}},"name":{"enum":["phonon_dispersions"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Total energy contributions property schema","type":"object","properties":{"temperatureEntropy":{"description":"product of temperature and configurational entropy","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["temperature_entropy"]}}},"harris_foulkes":{"description":"non self-consitent energy based on an input charge density","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["harris_foulkes"]}}},"smearing":{"description":"smearing energy","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["smearing"]}}},"one_electron":{"description":"kinetic + pseudopotential energy","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["one_electron"]}}},"hartree":{"description":"energy due to coulomb potential","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["hartree"]}}},"exchange":{"description":"exchange energy","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["exchange"]}}},"exchange_correlation":{"description":"exchange and correlation energy per particle","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["exchange_correlation"]}}},"ewald":{"description":"summation of interaction energies at long length scales due to coloumbic interactions","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["ewald"]}}},"alphaZ":{"description":"divergent electrostatic ion interaction in compensating electron gas","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["alphaZ"]}}},"atomicEnergy":{"description":"kinetic energy of wavefunctions in the atomic limit","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["atomic_energy"]}}},"eigenvalues":{"description":"sum of one electron energies of kinetic, electrostatic, and exchange correlation","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["eigenvalues"]}}},"PAWDoubleCounting2":{"description":"double counting correction 2","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["PAW_double-counting_correction_2"]}}},"PAWDoubleCounting3":{"description":"double counting correction 3","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["PAW_double-counting_correction_3"]}}},"hartreeFock":{"description":"hartree-fock contribution","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["hartree_fock"]}}},"name":{"enum":["total_energy_contributions"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Formation energy contributions property schema","description":"Elemental reference total energies used to calculate formation energy.","type":"object","properties":{"name":{"enum":["formation_energy_contributions"]},"values":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Formation energy contribution schema","description":"Total energy contribution of one material used in formation energy calculation.","type":"object","properties":{"formula":{"description":"formula or label for the material used in the formation energy calculation","type":"string"},"n_atoms":{"description":"number of atoms in the material","type":"integer"},"is_elemental":{"description":"whether the material is an elemental reference","type":"boolean"},"total_energy":{"description":"total energy of the material","type":"number"},"total_energy_per_atom":{"description":"total energy per atom of the material","type":"number"},"precision_value":{"description":"precision value for the total energy property","type":"number","default":-1},"precision_metric":{"description":"metric used to report total energy precision","type":"string","enum":["unknown","KPPRA","spacing"],"default":"unknown"}},"required":["formula","n_atoms","is_elemental","total_energy","total_energy_per_atom","precision_metric","precision_value"]}}},"required":["name","values"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Phonon density of states property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["frequency"]},"units":{"enum":["cm-1","THz","meV"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["Phonon DOS"]},"units":{"enum":["states/cm-1","states/THz","states/meV"]}}},"name":{"enum":["phonon_dos"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Potential profile property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["z coordinate"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["energy"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},"name":{"enum":["potential_profile"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Wavefunction amplitude property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["coordinate"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["amplitude"]}}},"name":{"enum":["wavefunction_amplitude"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reaction energy profile property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["reaction coordinate"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["energy"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},"name":{"enum":["reaction_energy_profile"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density of states property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["energy"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["density of states"]},"units":{"enum":["states/unitcell"]}}},"name":{"enum":["density_of_states"]},"legend":{"type":"array","items":{"type":"object","properties":{"element":{"description":"chemical element","type":"string"},"index":{"description":"index inside sub-array of atoms of the same element type","type":"integer"},"electronicState":{"description":"electronic character and shell of PDOS, such as `1s` or `s`, or `total`","type":"string","pattern":"^([1-5]{1})?(s|p|d|f|g).*$"},"spin":{"description":"spin of the electronic state","type":"number","enum":[0.5,-0.5]}}}}},"required":["name","legend"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dielectric tensor property schema","description":"The real and imaginary parts of the diagonal elements of the dieletric tensor","type":"object","properties":{"name":{"enum":["dielectric_tensor"]},"values":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dielectric Tensor","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"","description":"Schema for a function of frequency yielding a nx3 matrix","type":"object","properties":{"frequencies":{"description":"Frequencies","type":"array","items":{"type":"number"}},"components":{"description":"Matrix with 3 columns, e.g. x, y, z","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}],"properties":{"part":{"description":"Real or imaginary part of the dielectric tensor component","type":"string","enum":["real","imaginary"]},"spin":{"type":"number"}},"required":["part","frequencies","components"]}}},"required":["name","values"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"File content property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"name":{"enum":["file_content"]},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string","enum":["image","text","csv"],"$comment":"isGenerative:true"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}}},"required":["name","filetype","objectData"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U parameters property schema","description":"Hubbard U values in eV corresponding to atomic species, orbital and site number.","type":"object","properties":{"name":{"enum":["hubbard_u"]},"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital numeric","description":"Atomic properties per orbital pair with numeric value e.g., Hubbard V parameters.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital","description":"Atomic properties per orbital e.g., Hubbard U parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data numeric properties","description":"Numeric value specific to atomic data","type":"object","properties":{"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}]}],"required":["id","atomicSpecies","orbitalName","value"]}}},"required":["name","values","units"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V parameters property schema","description":"Hubbard V values corresponding to atomic pairs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard parameters reusable schema","description":"Common properties for hubbard parameter schemas","type":"object","properties":{"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair numeric","description":"Atomic properties per orbital pair with numeric value e.g., Hubbard V parameters.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair","description":"Atomic properties per orbital pair e.g., Hubbard V parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"id2":{"type":"integer","description":"Site number or index in the lattice of second site"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"atomicSpecies2":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co2, O"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalName2":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"distance":{"type":"number","description":"Distance between two sites in Bohr."}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data numeric properties","description":"Numeric value specific to atomic data","type":"object","properties":{"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}]}],"required":["id","id2","atomicSpecies","atomicSpecies2","value"]}}},"required":["values","units"]}],"properties":{"name":{"enum":["hubbard_v"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V NN parameters property schema","description":"Hubbard V value in eV for nearest neighbors used in hp.x output parsing","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard parameters reusable schema","description":"Common properties for hubbard parameter schemas","type":"object","properties":{"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair numeric","description":"Atomic properties per orbital pair with numeric value e.g., Hubbard V parameters.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair","description":"Atomic properties per orbital pair e.g., Hubbard V parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"id2":{"type":"integer","description":"Site number or index in the lattice of second site"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"atomicSpecies2":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co2, O"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalName2":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"distance":{"type":"number","description":"Distance between two sites in Bohr."}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data numeric properties","description":"Numeric value specific to atomic data","type":"object","properties":{"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}]}],"required":["id","id2","atomicSpecies","atomicSpecies2","value"]}}},"required":["values","units"]}],"properties":{"name":{"enum":["hubbard_v_nn"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Average potential profile property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"properties":{"label":{"enum":["z coordinate"]},"units":{"enum":["km","m","cm","mm","um","nm","angstrom","a.u.","bohr","pm"]}}},"yAxis":{"properties":{"label":{"enum":["energy"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},"name":{"enum":["average_potential_profile"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Charge density profile property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["z coordinate"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["charge density"]},"units":{"enum":["e/A"]}}},"name":{"enum":["charge_density_profile"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Workflow property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"base workflow schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this workflow (TODO: add enums)","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"isUsingDataset":{"description":"Whether to use the dataset tab in the job designer. Mutually exclusive with using the materials tab.","type":"boolean"},"isMultiMaterial":{"description":"Defines whether the workflow is for a multi-material simulation","type":"boolean"},"subworkflows":{"description":"Array of subworkflows. Subworkflow can be an instance of workflow to allow for nesting","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Mixin Schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this subworkflow","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]},"units":{"description":"Contains the Units of the subworkflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow subworkflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","properties":{"type":{"const":"io"},"subtype":{"enum":["input","output","dataFrame"]},"source":{"enum":["api","object_storage"]},"input":{"type":"array","items":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]}],"discriminator":{"propertyName":"type"}}}},"required":["subtype","source","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","properties":{"type":{"const":"condition"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"statement":{"description":"Condition statement. e.g. 'abs(x-total_energy) < 1e-5'","type":"string"},"then":{"description":"Flowchart ID reference for `then` part of the condition.","type":"string"},"else":{"description":"Flowchart ID reference for `else` part of the condition.","type":"string"},"maxOccurrences":{"description":"Maximum occurrence of the condition, usable for loops.","type":"integer"},"throwException":{"description":"Throw exception on reaching to maximum occurence.","type":"boolean"}},"required":["input","statement","then","else","maxOccurrences"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","properties":{"type":{"const":"assertion"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}},"required":["name","statement"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"scope schema","type":"object","properties":{"scope":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","properties":{"type":{"const":"assignment"},"input":{"description":"Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"operand":{"description":"Name of the global variable. e.g. 'x'","type":"string"},"value":{"description":"Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}},"required":["name","operand","value"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"model":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Any model schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"lda"},"functional":{"enum":["pz","pw","vwn","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"gga"},"functional":{"enum":["pbe","pbesol","pw91","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"hybrid"},"functional":{"enum":["b3lyp","hse06","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML model schema","type":"object","properties":{"type":{"enum":["ml"]},"subtype":{"enum":["re"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unknown model schema","type":"object","properties":{"type":{"enum":["unknown"]},"subtype":{"enum":["unknown"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}},"required":["model","properties","application","units"]}]}},"units":{"description":"Contains the Units of the Workflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit mixin schema","type":"object","properties":{"type":{"const":"map"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","properties":{"target":{"description":"Name of the target variable to substitute using the values below. e.g. K_POINTS","type":"string"},"scope":{"description":"Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.","type":"string"},"name":{"description":"Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.","type":"string"},"values":{"description":"Sequence of values for the target Jinja variable. Optional if `scope` and `name` are given. This can be used for map-reduce type parallel execution","type":"array","items":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"object"}]}},"useValues":{"type":"boolean"}},"required":["target"]}},"required":["input","workflowId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit mixin schema","type":"object","properties":{"type":{"const":"reduce"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","properties":{"operation":{"description":"reduce operation, e.g. aggregate","type":"string"},"arguments":{"description":"arguments which are passed to reduce operation function","type":"array","items":{"type":"string"}}},"required":["operation","arguments"]}}},"required":["mapFlowchartId","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"application":{"description":"information about the main application used for workflow categorization by application in standata.","type":"object","properties":{"name":{"description":"name of the application","type":"string"}}},"tags":{"description":"tags for the workflow","type":"array","items":{"type":"string"}}},"required":["properties","units","subworkflows"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Description schema","type":"object","properties":{"description":{"description":"entity description","type":"string"},"descriptionObject":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"workflows":{"description":"Array of workflows with the same schema as the current one.","type":"array","items":{"type":"object"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]}},"required":["workflows"]}],"properties":{"name":{"enum":["workflow:pyml_predict"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Magnetic moments property schema","description":"magnetization on each ion","type":"object","properties":{"name":{"enum":["magnetic_moments"]},"values":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vectors schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vector schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"enum":["uB"]}},"required":["name","values","units"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic forces property schema","description":"coordinates of atoms by ids, vector, unitless","type":"object","properties":{"name":{"enum":["atomic_forces"]},"values":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vectors schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vector schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"enum":["eV/bohr","eV/angstrom","Ry/a.u.","newton","kg*m/s^2","eV/a.u."]}},"required":["name","units","values"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Convergence electronic property schema","type":"object","properties":{"name":{"enum":["convergence_electronic"]},"units":{"enum":["eV","Ry","hartree"]},"data":{"type":"array","items":{"type":"array","items":{"type":"number"}}}},"required":["data","name","units"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Convergence ionic property schema","type":"object","properties":{"name":{"enum":["convergence_ionic"]},"tolerance":{"description":"for ionic convergence tolerance shows force tolerance"},"units":{"description":"units for force tolerance","enum":["eV"]},"data":{"type":"array","description":"energetic and structural information","items":{"type":"object","properties":{"energy":{"description":"converged electronic energy for this structure (last in `electronic`)","type":"number"},"structure":{"description":"TODO: structural information at each step to be here","type":"object"},"electronic":{"description":"data about electronic at this ionic step","type":"object","properties":{"units":{"description":"units for force tolerance","enum":["eV","Ry","hartree"]},"data":{"type":"array","items":{"type":"number"}}}}},"required":["energy"]}}},"required":["data","name","units"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Is relaxed property schema","type":"object","properties":{"name":{"enum":["is_relaxed"]},"value":{"type":"boolean"},"materialId":{"description":"Material's identity","type":"string"}},"required":["name","value","materialId"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Final structure property schema","type":"object","properties":{"name":{"enum":["final_structure"]},"isRelaxed":{"type":"boolean"},"materialId":{"description":"Material's identity","type":"string"}},"required":["name","isRelaxed","materialId"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Jupyter notebook endpoint property schema","type":"object","properties":{"name":{"enum":["jupyter_notebook_endpoint"]},"host":{"type":"string"},"port":{"type":"number"},"token":{"type":"string"}},"required":["name","host","port","token"]}],"discriminator":{"propertyName":"name"}},"source":{"type":"object","properties":{"type":{"description":"Type of the material property's source.","type":"string"},"info":{"$schema":"http://json-schema.org/draft-07/schema#","type":"object","properties":{"jobId":{"description":"Job's identity","type":"string"},"unitId":{"description":"Id of the unit that extracted the result","type":"string"}},"required":["jobId","unitId"]}},"required":["type","info"]},"exabyteId":{"description":"Id of the corresponding item in the entity bank that this property is obtained for","type":"array","items":{"type":"string"}},"precision":{"type":"object","properties":{"value":{"type":"number"},"metric":{"type":"string"}}},"systemTags":{"description":"property system tags, marks property system characteristics, values refined or best (could be both)","type":"array","items":{"type":"string","enum":["isRefined","isBest"]}},"repetition":{"type":"number"}},"required":["data","source","repetition","exabyteId"]},{"$id":"property/meta-holder","$schema":"http://json-schema.org/draft-07/schema#","title":"Meta property holder schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}}],"properties":{"data":{"description":"container of the information, specific to each property","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"File data item","type":"object","properties":{"element":{"type":"string","description":"chemical element"},"hash":{"type":"string","description":"MD5 hash of the pseudopotential file"},"type":{"enum":["us","nc","nc-fr","paw","coulomb"]},"source":{"type":"string","description":"explains where this came from"},"version":{"type":"string","description":"explains the version of where this came from"},"exchangeCorrelation":{"type":"object","properties":{"approximation":{"description":"DFT approximation","type":"string"},"functional":{"description":"Exchange correlation functional","type":"string"},"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}},"valenceConfiguration":{"type":"array","description":"contains pseudo orbital information, including orbital names and occupations","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic orbital schema","type":"object","properties":{"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalIndex":{"type":"integer","minimum":1},"principalNumber":{"type":"integer","minimum":1,"maximum":7},"angularMomentum":{"type":"integer","minimum":0,"maximum":3},"occupation":{"type":"number","description":"Shell occupation","minimum":0,"maximum":14}}}},"path":{"type":"string","description":"location of the pseudopotential file on filesystem"},"apps":{"type":"array","description":"The names of the simulation engines that can use this pseudopotential, e.g. espresso","items":{"type":"string"}},"filename":{"type":"string","description":"filename of pseudopotential file on filesystem"},"name":{"type":"string","description":"name of the data category","enum":["pseudopotential"]},"cutoffs":{"type":"object","description":"Suggested cutoff values for wave function and charge density.","additionalProperties":false,"properties":{"wavefunction":{"type":"array","description":"Energy cutoff values for wavefunction plane wave expansion.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for energy value with unit corresponding to a specific accuracy level, e.g., used for suggested wavefunction and charge density cutoffs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for scalar values with accuracy levels","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]}},"required":["accuracy_level"]}],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]}},"required":["unit"]}},"density":{"type":"array","description":"Energy cutoff values for charge density plane wave expansion.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for energy value with unit corresponding to a specific accuracy level, e.g., used for suggested wavefunction and charge density cutoffs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for scalar values with accuracy levels","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]}},"required":["accuracy_level"]}],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]}},"required":["unit"]}}}}},"required":["element","type","exchangeCorrelation","source","path","apps","name","hash"]}]},"source":{"type":"object","properties":{"type":{"description":"Type of the material property's source.","type":"string"},"info":{"type":"object"}},"required":["type"]}},"required":["data","source"]},{"$id":"property/proto-holder","$schema":"http://json-schema.org/draft-07/schema#","title":"Proto property holder schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}}],"properties":{"data":{"description":"container of the information, specific to each property","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraints property schema","description":"atomic constraints property schema (as stored in a database)","type":"object","properties":{"name":{"enum":["atomic_constraints"]},"values":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraints schema","description":"atomic constraints schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraint schema","description":"constraint of atoms by ids, used to constraint the position etc.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector boolean 3d schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 boolean elements schema","type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}]}}}}},"required":["name","values"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundary conditions property schema","description":"boundary conditions property schema (as stored in a database)","type":"object","properties":{"name":{"enum":["boundary_conditions"]},"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["name","type","offset"]}]},"source":{"type":"object","properties":{"type":{"description":"Type of the material property's source.","type":"string"},"info":{"type":"object","properties":{"materialId":{"type":"string"}}}},"required":["type","info"]}},"required":["data","source"]},{"$id":"property/source","$schema":"http://json-schema.org/draft-07/schema#","title":"Property source schema","type":"object","properties":{"type":{"description":"Type of the material property's source.","type":"string"},"url":{"description":"Internet address of the reference.","type":"string"},"info":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","type":"object","properties":{"jobId":{"description":"Job's identity","type":"string"},"unitId":{"description":"Id of the unit that extracted the result","type":"string"}},"required":["jobId","unitId"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"info for characteristic obtained by experiment","type":"object","properties":{"type":{"enum":["experiment"]},"authors":{"description":"experiment authors","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"title":{"type":"string","description":"experiment title"},"method":{"type":"string","description":"method used in experiment"},"conditions":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition schema","type":"object","properties":{"units":{"description":"condition unit","type":"string"},"scalar":{"description":"array of condition values","type":"array","items":{"type":"object","properties":{"value":{"type":"string"}}}},"name":{"description":"human-readable name of the condition","type":"string"}},"required":["name"]}},"location":{"$schema":"http://json-schema.org/draft-07/schema#","title":"location schema","type":"object","properties":{"latitude":{"description":"location latitude","type":"number"},"longitude":{"description":"location longitude","type":"number"}},"required":["latitude","longitude"]},"timestamp":{"description":"epoch time.","type":"number"},"note":{"description":"Note about experiment","type":"string"},"references":{"type":"array","description":"references to literature articles","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}}},"required":["conditions","authors","title","method","timestamp"]}]}},"required":["info"]},{"$id":"software/application/build-config","$schema":"http://json-schema.org/draft-07/schema#","title":"application versions with build config schema","type":"object","properties":{"bio":{"description":"The bio description used for the module files.","type":"string"},"moduleName":{"description":"Modulefile name specific to application version and build type.","type":"string"},"imageName":{"description":"Apptainer image name.","type":"string"},"imageTag":{"description":"Apptainer image tag.","type":"string"},"dependencies":{"description":"List of modulefile dependencies.","type":"array","items":{"type":"string"}},"environmentVariables":{"description":"Environment variables to be exported before running the application, containing the key and value pairs.","type":"object"},"prependVariables":{"description":"Variables to be prepended to the existing environment variable before running the application, containing the key and value pairs, e.g., PATH, LD_LIBRARY_PATH, etc.","type":"object"}}},{"$id":"software/application","$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},{"$id":"software/application-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]},{"$id":"software/application-with-build-config","$schema":"http://json-schema.org/draft-07/schema#","title":"application with build config schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]}],"properties":{"buildConfig":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application versions with build config schema","type":"object","properties":{"bio":{"description":"The bio description used for the module files.","type":"string"},"moduleName":{"description":"Modulefile name specific to application version and build type.","type":"string"},"imageName":{"description":"Apptainer image name.","type":"string"},"imageTag":{"description":"Apptainer image tag.","type":"string"},"dependencies":{"description":"List of modulefile dependencies.","type":"array","items":{"type":"string"}},"environmentVariables":{"description":"Environment variables to be exported before running the application, containing the key and value pairs.","type":"object"},"prependVariables":{"description":"Variables to be prepended to the existing environment variable before running the application, containing the key and value pairs, e.g., PATH, LD_LIBRARY_PATH, etc.","type":"object"}}}}},{"$id":"software/executable","$schema":"http://json-schema.org/draft-07/schema#","title":"executable schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},{"$id":"software/executable-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]},{"$id":"software/flavor","$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},{"$id":"software/flavor-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]},{"$id":"software/template","$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},{"$id":"software/template-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]},{"$id":"software-directory/modeling/deepmd","$schema":"http://json-schema.org/draft-07/schema#","title":"DeePMD app schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]}],"properties":{"name":{"enum":["deepmd"]},"summary":{"enum":["DeePMD is a deep learning package that is based on neural network fitted first-principles data for many-body potential energy representation and molecular dynamics"]},"version":{"enum":["2.0.2"]},"exec":{"enum":["dp","lmp","python"]}}},{"$id":"software-directory/modeling/espresso/arguments","$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false},{"$id":"software-directory/modeling/espresso","$schema":"http://json-schema.org/draft-07/schema#","title":"espresso app schema","type":"object","properties":{"name":{"enum":["espresso"]},"summary":{"enum":["Quantum Espresso"]},"version":{"enum":["5.2.1","5.4.0","6.0.0","6.3","6.4.1","6.5.0","6.6.0","6.7.0","6.8.0","7.0","7.2","7.3"]}}},{"$id":"software-directory/modeling/lammps","$schema":"http://json-schema.org/draft-07/schema#","title":"LAMMPS","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]}],"properties":{"name":{"enum":["lammps"]},"summary":{"enum":["LAMMPS"]},"version":{"enum":["2025.07.22.2"]},"build":{"enum":["GNU","Intel","CUDA"]},"exec":{"enum":["lmp"]}}},{"$id":"software-directory/modeling/nwchem","$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]}],"properties":{"name":{"enum":["NWChem"]},"summary":{"enum":["NWChem: a comprehensive and scalable open-source solution for large scale molecular simulations"]},"version":{"enum":["6.6","7.0.2"]},"exec":{"enum":["nwchem"]}}},{"$id":"software-directory/modeling/unit/execution","$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema for physics-based simulation engines (defined using espresso as example)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input schema","type":"object","properties":{"input":{"title":"execution unit input schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}]}}}}]},{"$id":"software-directory/modeling/vasp","$schema":"http://json-schema.org/draft-07/schema#","title":"vienna ab-inito simulation package","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]}],"properties":{"name":{"enum":["vasp"]},"summary":{"enum":["vienna ab-initio simulation package"]},"flavor":{"enum":["vasp","vasp_nscf","vasp_bands"]},"version":{"enum":["5.3.5"]},"exec":{"enum":["vasp"]}}},{"$id":"software-directory/scripting/jupyter-lab","$schema":"http://json-schema.org/draft-07/schema#","title":"Jupyter Lab Application Schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]}],"properties":{"name":{"enum":["jupyterLab"]},"flavor":{"enum":["notebook"]},"summary":{"enum":["Jupyter Lab"]},"version":{"enum":["0.33.12"]},"exec":{"enum":["jupyter"]}}},{"$id":"software-directory/scripting/python","$schema":"http://json-schema.org/draft-07/schema#","title":"Python Programing Language Schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]}],"properties":{"name":{"enum":["python"]},"flavor":{"enum":["python2","python3"]},"summary":{"enum":["Python Script"]},"version":{"enum":["2.7.5","3.6.1"]},"exec":{"enum":["python"]},"arguments":{"description":"Optional arguments passed to the Python script","type":"string"},"environment":{"description":"Optional environment variables exported before running the Python script","type":"object"},"dependencies":{"description":"Optional Python dependencies, e.g. amqp==1.4.6","type":"array"}}},{"$id":"software-directory/scripting/shell","$schema":"http://json-schema.org/draft-07/schema#","title":"Shell Scripting Language Schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]}],"properties":{"name":{"enum":["shell"]},"flavor":{"enum":["sh","bash","zsh","csh"]},"summary":{"enum":["Shell Script"]},"version":{"enum":["4.2.46"]},"exec":{"enum":["sh","bash","zsh","csh"]},"arguments":{"description":"Optional arguments passed to the Shell script","type":"string"},"environment":{"description":"Optional environment variables exported before running the Shell script","type":"object"}}},{"$id":"software-directory/scripting/unit/execution","$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema for scripting-based applications","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input schema","type":"object","properties":{"input":{"title":"execution unit input schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}]}}}}]},{"$id":"system/-material","$schema":"http://json-schema.org/draft-07/schema#","title":"Material entity reference schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}],"properties":{"cls":{"description":"Material class","type":"string","enum":["Material"]}}},{"$id":"system/-parent-job","$schema":"http://json-schema.org/draft-07/schema#","title":"Parent job entity reference schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}],"properties":{"cls":{"description":"Job class","type":"string","enum":["Job"]}}},{"$id":"system/-project","$schema":"http://json-schema.org/draft-07/schema#","title":"Project entity reference schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}],"properties":{"cls":{"description":"Project class","type":"string","enum":["Project"]}}},{"$id":"system/bankable","$schema":"http://json-schema.org/draft-07/schema#","title":"bankable schema","type":"object","properties":{"exabyteId":{"description":"Identity of the corresponding bank entity","type":"string"}},"required":["exabyteId"]},{"$id":"system/consistency-check","$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]},{"$id":"system/creator","$schema":"http://json-schema.org/draft-07/schema#","title":"Creator entity reference schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}],"properties":{"cls":{"description":"Creator class","type":"string","enum":["User"]}},"required":["cls"]},{"$id":"system/creator-account","$schema":"http://json-schema.org/draft-07/schema#","title":"creator account schema","type":"object","properties":{"creatorAccount":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}},"required":["creatorAccount"]},{"$id":"system/database-source","$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$id":"system/defaultable","$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}},{"$id":"system/description","$schema":"http://json-schema.org/draft-07/schema#","title":"Description schema","type":"object","properties":{"description":{"description":"entity description","type":"string"},"descriptionObject":{"type":"object"}}},{"$id":"system/entity-reference","$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]},{"$id":"system/file-source","$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},{"$id":"system/has-consistency-check","$schema":"http://json-schema.org/draft-07/schema#","title":"Has consistency check schema","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}}}},{"$id":"system/hashed","$schema":"http://json-schema.org/draft-07/schema#","title":"hashed schema","type":"object","properties":{"hash":{"description":"Hash string which is calculated based on the meaningful fields of the entity. Used to identify equal entities.","type":"string"}},"required":["hash"]},{"$id":"system/history","$schema":"http://json-schema.org/draft-07/schema#","title":"history schema","type":"object","properties":{"history":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"revision":{"type":"number"}},"required":["id","revision"]}}}},{"$id":"system/iframe-message","$schema":"http://json-schema.org/draft-07/schema#","title":"iframe message schema","description":"communication message between iframe and the parent window.","type":"object","properties":{"type":{"description":"The type of the message to distinguish the direction of the message.","type":"string","enum":["from-iframe-to-host","from-host-to-iframe"],"tsEnumNames":["fromIframeToHost","fromHostToIframe"]},"action":{"description":"The action to be performed upon receiving the message.","type":"string","enum":["set-data","get-data","info"],"tsEnumNames":["setData","getData","info"]},"payload":{"description":"The content of the message with actual data.","type":"object"}},"required":["type","action","payload"]},{"$id":"system/in-set","$schema":"http://json-schema.org/draft-07/schema#","title":"System in-set schema","type":"object","properties":{"inSet":{"type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]},{"type":"object","properties":{"type":{"type":"string"},"index":{"type":"number"}}}]}}},"required":["inSet"]},{"$id":"system/is-multi-material","$schema":"http://json-schema.org/draft-07/schema#","title":"is multi schema","type":"object","properties":{"isMultiMaterial":{"type":"boolean"}}},{"$id":"system/is-outdated","$schema":"http://json-schema.org/draft-07/schema#","title":"is outdated schema","type":"object","properties":{"isOutdated":{"type":"boolean"}}},{"$id":"system/job-extended","$schema":"http://json-schema.org/draft-07/schema#","title":"extended job schema","type":"object","properties":{"mode":{"type":"string"},"isExternal":{"type":"boolean"},"_materials":{"type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}]}},"_materialsSet":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}]},"purged":{"type":"boolean"},"purgedAt":{"type":"number"},"dataset":{"type":"object"}}},{"$id":"system/message","$schema":"http://json-schema.org/draft-07/schema#","title":"message schema","description":"communication message between Rupy and web application.","type":"object","properties":{"header":{"type":"object","properties":{"entity":{"type":"object","properties":{"_id":{"description":"job identifier","type":"string"},"name":{"description":"entity name.","type":"string","enum":["job","unit"]},"flowchartId":{"description":"unit identifier within the workflow","type":"string"},"probe":{"description":"source of the message.","type":"string","enum":["monitor","postprocessor"]}},"required":["_id","name"]},"version":{"description":"Rupy-Webapp communication schema version.","type":"string"},"timestamp":{"description":"Timestamp of the message.","type":"number"}},"required":["entity","version","timestamp"]},"payload":{"description":"Actual payload of the message.","type":"object"}},"required":["header","payload"]},{"$id":"system/metadata","$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}},{"$id":"system/name","$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$id":"system/owner","$schema":"http://json-schema.org/draft-07/schema#","title":"Entity owner reference schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}],"properties":{"cls":{"description":"Entity owner class","type":"string","enum":["Account"]}},"required":["cls"]},{"$id":"system/path","$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}},{"$id":"system/path-entity","$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$id":"system/runtime-item","$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true},{"$id":"system/runtime-items","$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$id":"system/schema-version","$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}},{"$id":"system/scope","$schema":"http://json-schema.org/draft-07/schema#","title":"scope schema","type":"object","properties":{"scope":{"type":"string"}}},{"$id":"system/set","$schema":"http://json-schema.org/draft-07/schema#","title":"Entity set schema","type":"object","properties":{"isEntitySet":{"type":"boolean"},"entitySetType":{"type":"string"},"entityCls":{"type":"string"}}},{"$id":"system/sharing","$schema":"http://json-schema.org/draft-07/schema#","title":"extended sharing schema","type":"object","properties":{"sharedCount":{"type":"number"}}},{"$id":"system/soft-removable","$schema":"http://json-schema.org/draft-07/schema#","title":"soft removable entity schema","type":"object","properties":{"removedAt":{"description":"Timestamp of the moment when entity was removed","type":"string"},"removed":{"description":"Identifies that entity was removed","type":"boolean"}}},{"$id":"system/status","$schema":"http://json-schema.org/draft-07/schema#","title":"status schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}}],"properties":{"status":{"type":"string"}}},{"$id":"system/status-track","$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$id":"system/tags","$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"system/timestampable","$schema":"http://json-schema.org/draft-07/schema#","title":"timestampable entity schema","type":"object","properties":{"createdAt":{"description":"entity creation time","type":"string","format":"date-time"},"updatedAt":{"description":"entity last modification time","type":"string","format":"date-time"},"createdBy":{"type":"string"},"updatedBy":{"type":"string"}}},{"$id":"system/use-values","$schema":"http://json-schema.org/draft-07/schema#","title":"use values schema","type":"object","properties":{"useValues":{"type":"boolean"}}},{"$id":"workflow/base","$schema":"http://json-schema.org/draft-07/schema#","title":"base workflow schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this workflow (TODO: add enums)","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"isUsingDataset":{"description":"Whether to use the dataset tab in the job designer. Mutually exclusive with using the materials tab.","type":"boolean"},"isMultiMaterial":{"description":"Defines whether the workflow is for a multi-material simulation","type":"boolean"},"subworkflows":{"description":"Array of subworkflows. Subworkflow can be an instance of workflow to allow for nesting","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Mixin Schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this subworkflow","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]},"units":{"description":"Contains the Units of the subworkflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow subworkflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","properties":{"type":{"const":"io"},"subtype":{"enum":["input","output","dataFrame"]},"source":{"enum":["api","object_storage"]},"input":{"type":"array","items":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]}],"discriminator":{"propertyName":"type"}}}},"required":["subtype","source","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","properties":{"type":{"const":"condition"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"statement":{"description":"Condition statement. e.g. 'abs(x-total_energy) < 1e-5'","type":"string"},"then":{"description":"Flowchart ID reference for `then` part of the condition.","type":"string"},"else":{"description":"Flowchart ID reference for `else` part of the condition.","type":"string"},"maxOccurrences":{"description":"Maximum occurrence of the condition, usable for loops.","type":"integer"},"throwException":{"description":"Throw exception on reaching to maximum occurence.","type":"boolean"}},"required":["input","statement","then","else","maxOccurrences"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","properties":{"type":{"const":"assertion"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}},"required":["name","statement"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"scope schema","type":"object","properties":{"scope":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","properties":{"type":{"const":"assignment"},"input":{"description":"Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"operand":{"description":"Name of the global variable. e.g. 'x'","type":"string"},"value":{"description":"Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}},"required":["name","operand","value"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"model":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Any model schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"lda"},"functional":{"enum":["pz","pw","vwn","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"gga"},"functional":{"enum":["pbe","pbesol","pw91","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"hybrid"},"functional":{"enum":["b3lyp","hse06","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML model schema","type":"object","properties":{"type":{"enum":["ml"]},"subtype":{"enum":["re"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unknown model schema","type":"object","properties":{"type":{"enum":["unknown"]},"subtype":{"enum":["unknown"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}},"required":["model","properties","application","units"]}]}},"units":{"description":"Contains the Units of the Workflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit mixin schema","type":"object","properties":{"type":{"const":"map"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","properties":{"target":{"description":"Name of the target variable to substitute using the values below. e.g. K_POINTS","type":"string"},"scope":{"description":"Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.","type":"string"},"name":{"description":"Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.","type":"string"},"values":{"description":"Sequence of values for the target Jinja variable. Optional if `scope` and `name` are given. This can be used for map-reduce type parallel execution","type":"array","items":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"object"}]}},"useValues":{"type":"boolean"}},"required":["target"]}},"required":["input","workflowId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit mixin schema","type":"object","properties":{"type":{"const":"reduce"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","properties":{"operation":{"description":"reduce operation, e.g. aggregate","type":"string"},"arguments":{"description":"arguments which are passed to reduce operation function","type":"array","items":{"type":"string"}}},"required":["operation","arguments"]}}},"required":["mapFlowchartId","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"application":{"description":"information about the main application used for workflow categorization by application in standata.","type":"object","properties":{"name":{"description":"name of the application","type":"string"}}},"tags":{"description":"tags for the workflow","type":"array","items":{"type":"string"}}},"required":["properties","units","subworkflows"]},{"$id":"workflow/base-flow","$schema":"http://json-schema.org/draft-07/schema#","title":"BaseFlow","type":"object","properties":{"_id":{"description":"subworkflow identity","type":"string"},"name":{"description":"Human-readable name of the subworkflow. e.g. Total-energy","type":"string"},"properties":{"description":"Array of characteristic properties calculated by this subworkflow","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]}},"required":["name","units"]},{"$id":"workflow/scope","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow scope schema","type":"object","properties":{"global":{"type":"object","additionalProperties":true},"local":{"type":"object","additionalProperties":true}},"required":["global","local"]},{"$id":"workflow/subworkflow/convergence/enum-options","definitions":{"ConvergenceParameterNameEnum":{"type":"string","enum":["N_k","N_k_nonuniform","N_k_nonuniform_2D"],"tsEnumNames":["N_k","N_k_nonuniform","N_k_nonuniform_2D"]}}},{"$id":"workflow/subworkflow/mixin","$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Mixin Schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this subworkflow","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]},"units":{"description":"Contains the Units of the subworkflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow subworkflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","properties":{"type":{"const":"io"},"subtype":{"enum":["input","output","dataFrame"]},"source":{"enum":["api","object_storage"]},"input":{"type":"array","items":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]}],"discriminator":{"propertyName":"type"}}}},"required":["subtype","source","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","properties":{"type":{"const":"condition"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"statement":{"description":"Condition statement. e.g. 'abs(x-total_energy) < 1e-5'","type":"string"},"then":{"description":"Flowchart ID reference for `then` part of the condition.","type":"string"},"else":{"description":"Flowchart ID reference for `else` part of the condition.","type":"string"},"maxOccurrences":{"description":"Maximum occurrence of the condition, usable for loops.","type":"integer"},"throwException":{"description":"Throw exception on reaching to maximum occurence.","type":"boolean"}},"required":["input","statement","then","else","maxOccurrences"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","properties":{"type":{"const":"assertion"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}},"required":["name","statement"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"scope schema","type":"object","properties":{"scope":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","properties":{"type":{"const":"assignment"},"input":{"description":"Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"operand":{"description":"Name of the global variable. e.g. 'x'","type":"string"},"value":{"description":"Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}},"required":["name","operand","value"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"model":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Any model schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"lda"},"functional":{"enum":["pz","pw","vwn","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"gga"},"functional":{"enum":["pbe","pbesol","pw91","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"hybrid"},"functional":{"enum":["b3lyp","hse06","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML model schema","type":"object","properties":{"type":{"enum":["ml"]},"subtype":{"enum":["re"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unknown model schema","type":"object","properties":{"type":{"enum":["unknown"]},"subtype":{"enum":["unknown"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}},"required":["model","properties","application","units"]},{"$id":"workflow/subworkflow/unit","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow subworkflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","properties":{"type":{"const":"io"},"subtype":{"enum":["input","output","dataFrame"]},"source":{"enum":["api","object_storage"]},"input":{"type":"array","items":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]}],"discriminator":{"propertyName":"type"}}}},"required":["subtype","source","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","properties":{"type":{"const":"condition"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"statement":{"description":"Condition statement. e.g. 'abs(x-total_energy) < 1e-5'","type":"string"},"then":{"description":"Flowchart ID reference for `then` part of the condition.","type":"string"},"else":{"description":"Flowchart ID reference for `else` part of the condition.","type":"string"},"maxOccurrences":{"description":"Maximum occurrence of the condition, usable for loops.","type":"integer"},"throwException":{"description":"Throw exception on reaching to maximum occurence.","type":"boolean"}},"required":["input","statement","then","else","maxOccurrences"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","properties":{"type":{"const":"assertion"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}},"required":["name","statement"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"scope schema","type":"object","properties":{"scope":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","properties":{"type":{"const":"assignment"},"input":{"description":"Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"operand":{"description":"Name of the global variable. e.g. 'x'","type":"string"},"value":{"description":"Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}},"required":["name","operand","value"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]},{"$id":"workflow/subworkflow","$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Mixin Schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this subworkflow","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]},"units":{"description":"Contains the Units of the subworkflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow subworkflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","properties":{"type":{"const":"io"},"subtype":{"enum":["input","output","dataFrame"]},"source":{"enum":["api","object_storage"]},"input":{"type":"array","items":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]}],"discriminator":{"propertyName":"type"}}}},"required":["subtype","source","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","properties":{"type":{"const":"condition"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"statement":{"description":"Condition statement. e.g. 'abs(x-total_energy) < 1e-5'","type":"string"},"then":{"description":"Flowchart ID reference for `then` part of the condition.","type":"string"},"else":{"description":"Flowchart ID reference for `else` part of the condition.","type":"string"},"maxOccurrences":{"description":"Maximum occurrence of the condition, usable for loops.","type":"integer"},"throwException":{"description":"Throw exception on reaching to maximum occurence.","type":"boolean"}},"required":["input","statement","then","else","maxOccurrences"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","properties":{"type":{"const":"assertion"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}},"required":["name","statement"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"scope schema","type":"object","properties":{"scope":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","properties":{"type":{"const":"assignment"},"input":{"description":"Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"operand":{"description":"Name of the global variable. e.g. 'x'","type":"string"},"value":{"description":"Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}},"required":["name","operand","value"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"model":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Any model schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"lda"},"functional":{"enum":["pz","pw","vwn","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"gga"},"functional":{"enum":["pbe","pbesol","pw91","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"hybrid"},"functional":{"enum":["b3lyp","hse06","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML model schema","type":"object","properties":{"type":{"enum":["ml"]},"subtype":{"enum":["re"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unknown model schema","type":"object","properties":{"type":{"enum":["unknown"]},"subtype":{"enum":["unknown"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}},"required":["model","properties","application","units"]}]},{"$id":"workflow/unit/assertion","$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","properties":{"type":{"const":"assertion"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}},"required":["name","statement"]}]},{"$id":"workflow/unit/assignment","$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"scope schema","type":"object","properties":{"scope":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","properties":{"type":{"const":"assignment"},"input":{"description":"Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"operand":{"description":"Name of the global variable. e.g. 'x'","type":"string"},"value":{"description":"Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}},"required":["name","operand","value"]}]},{"$id":"workflow/unit/base","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$id":"workflow/unit/condition","$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","properties":{"type":{"const":"condition"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"statement":{"description":"Condition statement. e.g. 'abs(x-total_energy) < 1e-5'","type":"string"},"then":{"description":"Flowchart ID reference for `then` part of the condition.","type":"string"},"else":{"description":"Flowchart ID reference for `else` part of the condition.","type":"string"},"maxOccurrences":{"description":"Maximum occurrence of the condition, usable for loops.","type":"integer"},"throwException":{"description":"Throw exception on reaching to maximum occurence.","type":"boolean"}},"required":["input","statement","then","else","maxOccurrences"]}]},{"$id":"workflow/unit/context/-base","$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]},{"$id":"workflow/unit/context/-extra-data-material-hash","$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}},{"$id":"workflow/unit/context/item/boundaryConditions","$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$id":"workflow/unit/context/item/collinearMagnetization","$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$id":"workflow/unit/context/item/cutoffs","$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$id":"workflow/unit/context/item/dynamics","$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$id":"workflow/unit/context/item/grid","$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$id":"workflow/unit/context/item/hubbard-j","$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$id":"workflow/unit/context/item/hubbard-legacy","$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$id":"workflow/unit/context/item/hubbard-u","$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$id":"workflow/unit/context/item/hubbard-v","$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$id":"workflow/unit/context/item/input","$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$id":"workflow/unit/context/item/mlSettings","$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$id":"workflow/unit/context/item/mlTrainTestSplit","$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$id":"workflow/unit/context/item/neb","$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$id":"workflow/unit/context/item/nonCollinearMagnetization","$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$id":"workflow/unit/context/item/path","$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$id":"workflow/unit/context/item","$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}},{"$id":"workflow/unit/error","$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]},{"$id":"workflow/unit/execution","$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$id":"workflow/unit/input/-input","$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input schema","type":"object","properties":{"input":{"title":"execution unit input schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}]}}}},{"$id":"workflow/unit/input/-inputItem","$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]},{"$id":"workflow/unit/input/-inputItemId","$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]},{"$id":"workflow/unit/input/-inputItemScope","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]},{"$id":"workflow/unit/input/-map-input/values","$schema":"http://json-schema.org/draft-07/schema#","title":"Unit values schema","type":"object","properties":{"values":{"type":"string"}}},{"$id":"workflow/unit/input/-map-input","$schema":"http://json-schema.org/draft-07/schema#","title":"Unit map input schema","type":"object","properties":{"target":{"type":"string"},"values":{"type":"array","items":{"oneOf":[{"type":"number"},{"type":"string"},{"type":"object"}]}},"useValues":{"type":"boolean"},"scope":{"type":"string"},"name":{"type":"string"}}},{"$id":"workflow/unit/io/api","$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$id":"workflow/unit/io/db-collection","$schema":"http://json-schema.org/draft-07/schema#","title":"data IO database collection input/output schema (not used)","type":"object","properties":{"type":{"const":"db_collection"},"collection":{"description":"db collection name","type":"string"},"draft":{"description":"whether the result should be saved as draft","type":"boolean"}},"required":["type","collection","draft"]},{"$id":"workflow/unit/io/db-ids","$schema":"http://json-schema.org/draft-07/schema#","title":"data IO database ids input/output schema (not used)","type":"object","properties":{"type":{"const":"db_ids"},"ids":{"description":"IDs of item to retrieve from db","type":"array","items":{"type":"string"}}},"required":["type","ids"]},{"$id":"workflow/unit/io/object-storage","$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]},{"$id":"workflow/unit/io","$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","properties":{"type":{"const":"io"},"subtype":{"enum":["input","output","dataFrame"]},"source":{"enum":["api","object_storage"]},"input":{"type":"array","items":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]}],"discriminator":{"propertyName":"type"}}}},"required":["subtype","source","input"]}]},{"$id":"workflow/unit/map","$schema":"http://json-schema.org/draft-07/schema#","title":"map unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit mixin schema","type":"object","properties":{"type":{"const":"map"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","properties":{"target":{"description":"Name of the target variable to substitute using the values below. e.g. K_POINTS","type":"string"},"scope":{"description":"Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.","type":"string"},"name":{"description":"Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.","type":"string"},"values":{"description":"Sequence of values for the target Jinja variable. Optional if `scope` and `name` are given. This can be used for map-reduce type parallel execution","type":"array","items":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"object"}]}},"useValues":{"type":"boolean"}},"required":["target"]}},"required":["input","workflowId"]}]},{"$id":"workflow/unit/mixins/assertion","$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","properties":{"type":{"const":"assertion"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}},"required":["name","statement"]},{"$id":"workflow/unit/mixins/assignment","$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","properties":{"type":{"const":"assignment"},"input":{"description":"Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"operand":{"description":"Name of the global variable. e.g. 'x'","type":"string"},"value":{"description":"Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}},"required":["name","operand","value"]},{"$id":"workflow/unit/mixins/base","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]},{"$id":"workflow/unit/mixins/condition","$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","properties":{"type":{"const":"condition"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"statement":{"description":"Condition statement. e.g. 'abs(x-total_energy) < 1e-5'","type":"string"},"then":{"description":"Flowchart ID reference for `then` part of the condition.","type":"string"},"else":{"description":"Flowchart ID reference for `else` part of the condition.","type":"string"},"maxOccurrences":{"description":"Maximum occurrence of the condition, usable for loops.","type":"integer"},"throwException":{"description":"Throw exception on reaching to maximum occurence.","type":"boolean"}},"required":["input","statement","then","else","maxOccurrences"]},{"$id":"workflow/unit/mixins/error","$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]},{"$id":"workflow/unit/mixins/execution","$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]},{"$id":"workflow/unit/mixins/io","$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","properties":{"type":{"const":"io"},"subtype":{"enum":["input","output","dataFrame"]},"source":{"enum":["api","object_storage"]},"input":{"type":"array","items":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]}],"discriminator":{"propertyName":"type"}}}},"required":["subtype","source","input"]},{"$id":"workflow/unit/mixins/map","$schema":"http://json-schema.org/draft-07/schema#","title":"map unit mixin schema","type":"object","properties":{"type":{"const":"map"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","properties":{"target":{"description":"Name of the target variable to substitute using the values below. e.g. K_POINTS","type":"string"},"scope":{"description":"Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.","type":"string"},"name":{"description":"Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.","type":"string"},"values":{"description":"Sequence of values for the target Jinja variable. Optional if `scope` and `name` are given. This can be used for map-reduce type parallel execution","type":"array","items":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"object"}]}},"useValues":{"type":"boolean"}},"required":["target"]}},"required":["input","workflowId"]},{"$id":"workflow/unit/mixins/processing","$schema":"http://json-schema.org/draft-07/schema#","title":"processing unit mixin schema","type":"object","properties":{"type":{"const":"processing"},"operation":{"description":"Contains information about the operation used.","type":"string"},"operationType":{"description":"Contains information about the specific type of the operation used.","type":"string"},"inputData":{"description":"unit input (type to be specified by the child units)"}},"required":["operation","operationType","inputData"]},{"$id":"workflow/unit/mixins/reduce","$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit mixin schema","type":"object","properties":{"type":{"const":"reduce"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","properties":{"operation":{"description":"reduce operation, e.g. aggregate","type":"string"},"arguments":{"description":"arguments which are passed to reduce operation function","type":"array","items":{"type":"string"}}},"required":["operation","arguments"]}}},"required":["mapFlowchartId","input"]},{"$id":"workflow/unit/mixins/subworkflow","$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}},{"$id":"workflow/unit/reduce","$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit mixin schema","type":"object","properties":{"type":{"const":"reduce"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","properties":{"operation":{"description":"reduce operation, e.g. aggregate","type":"string"},"arguments":{"description":"arguments which are passed to reduce operation function","type":"array","items":{"type":"string"}}},"required":["operation","arguments"]}}},"required":["mapFlowchartId","input"]}]},{"$id":"workflow/unit/runtime/-runtime-item-full-object","$schema":"http://json-schema.org/draft-07/schema#","title":"full result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. 'my_custom_property. '","type":"string"}},"required":["name"]},{"$id":"workflow/unit/runtime/-runtime-item-name-object","$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"additionalProperties":true,"required":["name"]},{"$id":"workflow/unit/runtime/-runtime-item-string","$schema":"http://json-schema.org/draft-07/schema#","title":"RuntimeItemString","description":"name of runtime item in shortened notation","type":"string"},{"$id":"workflow/unit/runtime/runtime-item","$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"additionalProperties":true,"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"RuntimeItemString","description":"name of runtime item in shortened notation","type":"string"}]},{"$id":"workflow/unit/runtime/runtime-items","$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema (pre-/post-processors, monitors, results","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"additionalProperties":true,"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"RuntimeItemString","description":"name of runtime item in shortened notation","type":"string"}]}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"additionalProperties":true,"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"RuntimeItemString","description":"name of runtime item in shortened notation","type":"string"}]}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"additionalProperties":true,"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"RuntimeItemString","description":"name of runtime item in shortened notation","type":"string"}]}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"additionalProperties":true,"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"RuntimeItemString","description":"name of runtime item in shortened notation","type":"string"}]}}}},{"$id":"workflow/unit/subworkflow","$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]},{"$id":"workflow/unit","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit mixin schema","type":"object","properties":{"type":{"const":"map"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","properties":{"target":{"description":"Name of the target variable to substitute using the values below. e.g. K_POINTS","type":"string"},"scope":{"description":"Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.","type":"string"},"name":{"description":"Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.","type":"string"},"values":{"description":"Sequence of values for the target Jinja variable. Optional if `scope` and `name` are given. This can be used for map-reduce type parallel execution","type":"array","items":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"object"}]}},"useValues":{"type":"boolean"}},"required":["target"]}},"required":["input","workflowId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit mixin schema","type":"object","properties":{"type":{"const":"reduce"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","properties":{"operation":{"description":"reduce operation, e.g. aggregate","type":"string"},"arguments":{"description":"arguments which are passed to reduce operation function","type":"array","items":{"type":"string"}}},"required":["operation","arguments"]}}},"required":["mapFlowchartId","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]},{"$id":"workflow","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"base workflow schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this workflow (TODO: add enums)","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"isUsingDataset":{"description":"Whether to use the dataset tab in the job designer. Mutually exclusive with using the materials tab.","type":"boolean"},"isMultiMaterial":{"description":"Defines whether the workflow is for a multi-material simulation","type":"boolean"},"subworkflows":{"description":"Array of subworkflows. Subworkflow can be an instance of workflow to allow for nesting","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Mixin Schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this subworkflow","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]},"units":{"description":"Contains the Units of the subworkflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow subworkflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","properties":{"type":{"const":"io"},"subtype":{"enum":["input","output","dataFrame"]},"source":{"enum":["api","object_storage"]},"input":{"type":"array","items":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]}],"discriminator":{"propertyName":"type"}}}},"required":["subtype","source","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","properties":{"type":{"const":"condition"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"statement":{"description":"Condition statement. e.g. 'abs(x-total_energy) < 1e-5'","type":"string"},"then":{"description":"Flowchart ID reference for `then` part of the condition.","type":"string"},"else":{"description":"Flowchart ID reference for `else` part of the condition.","type":"string"},"maxOccurrences":{"description":"Maximum occurrence of the condition, usable for loops.","type":"integer"},"throwException":{"description":"Throw exception on reaching to maximum occurence.","type":"boolean"}},"required":["input","statement","then","else","maxOccurrences"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","properties":{"type":{"const":"assertion"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}},"required":["name","statement"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"scope schema","type":"object","properties":{"scope":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","properties":{"type":{"const":"assignment"},"input":{"description":"Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"operand":{"description":"Name of the global variable. e.g. 'x'","type":"string"},"value":{"description":"Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}},"required":["name","operand","value"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"model":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Any model schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"lda"},"functional":{"enum":["pz","pw","vwn","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"gga"},"functional":{"enum":["pbe","pbesol","pw91","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"hybrid"},"functional":{"enum":["b3lyp","hse06","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML model schema","type":"object","properties":{"type":{"enum":["ml"]},"subtype":{"enum":["re"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unknown model schema","type":"object","properties":{"type":{"enum":["unknown"]},"subtype":{"enum":["unknown"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}},"required":["model","properties","application","units"]}]}},"units":{"description":"Contains the Units of the Workflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit mixin schema","type":"object","properties":{"type":{"const":"map"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","properties":{"target":{"description":"Name of the target variable to substitute using the values below. e.g. K_POINTS","type":"string"},"scope":{"description":"Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.","type":"string"},"name":{"description":"Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.","type":"string"},"values":{"description":"Sequence of values for the target Jinja variable. Optional if `scope` and `name` are given. This can be used for map-reduce type parallel execution","type":"array","items":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"object"}]}},"useValues":{"type":"boolean"}},"required":["target"]}},"required":["input","workflowId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit mixin schema","type":"object","properties":{"type":{"const":"reduce"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","properties":{"operation":{"description":"reduce operation, e.g. aggregate","type":"string"},"arguments":{"description":"arguments which are passed to reduce operation function","type":"array","items":{"type":"string"}}},"required":["operation","arguments"]}}},"required":["mapFlowchartId","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"application":{"description":"information about the main application used for workflow categorization by application in standata.","type":"object","properties":{"name":{"description":"name of the application","type":"string"}}},"tags":{"description":"tags for the workflow","type":"array","items":{"type":"string"}}},"required":["properties","units","subworkflows"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Description schema","type":"object","properties":{"description":{"description":"entity description","type":"string"},"descriptionObject":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"workflows":{"description":"Array of workflows with the same schema as the current one.","type":"array","items":{"type":"object"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]}},"required":["workflows"]}]''') \ No newline at end of file +SCHEMAS = json.loads(r'''[{"$id":"apse/db/materials-project/2025.9.25/summary","$schema":"http://json-schema.org/draft-07/schema#","title":"Materials Project Schema","description":"JSON schema for Materials Project API summary endpoint response","type":"object","properties":{"builder_meta":{"type":"object","properties":{"emmet_version":{"type":"string","description":"Version of emmet library used"},"pymatgen_version":{"type":"string","description":"Version of pymatgen library used"},"run_id":{"type":"string","description":"Unique identifier for the calculation run"},"batch_id":{"type":["string","null"],"description":"Batch identifier for grouped calculations"},"database_version":{"type":"string","description":"Version of the Materials Project database"},"build_date":{"type":"string","format":"date-time","description":"Date when the calculation was performed"},"license":{"type":"string","description":"License information for the data"}},"required":["emmet_version","pymatgen_version","run_id","database_version","build_date","license"]},"nsites":{"type":"integer","description":"Number of sites in the structure"},"elements":{"type":"array","items":{"type":"string"},"description":"List of chemical elements in the material"},"nelements":{"type":"integer","description":"Number of unique elements"},"composition":{"type":"object","additionalProperties":{"type":"number"},"description":"Chemical composition as element: count mapping"},"composition_reduced":{"type":"object","additionalProperties":{"type":"number"},"description":"Reduced chemical composition"},"formula_pretty":{"type":"string","description":"Human-readable chemical formula"},"formula_anonymous":{"type":"string","description":"Anonymous chemical formula"},"chemsys":{"type":"string","description":"Chemical system identifier"},"volume":{"type":"number","description":"Unit cell volume in cubic Angstroms"},"density":{"type":"number","description":"Material density in g/cm³"},"density_atomic":{"type":"number","description":"Atomic density"},"symmetry":{"type":"object","properties":{"crystal_system":{"type":"string","description":"Crystal system classification"},"symbol":{"type":"string","description":"Space group symbol"},"hall":{"type":["string","null"],"description":"Hall symbol"},"number":{"type":"integer","description":"Space group number"},"point_group":{"type":"string","description":"Point group symbol"},"symprec":{"type":"number","description":"Symmetry precision tolerance"},"angle_tolerance":{"type":"number","description":"Angle tolerance for symmetry analysis"},"version":{"type":"string","description":"Version of symmetry analysis software"}},"required":["crystal_system","symbol","number","point_group","symprec","angle_tolerance","version"]},"material_id":{"type":"string","description":"Unique Materials Project identifier"},"deprecated":{"type":"boolean","description":"Whether this material entry is deprecated"},"deprecation_reasons":{"type":["array","null"],"items":{"type":"string"},"description":"Reasons for deprecation if applicable"},"last_updated":{"type":"string","format":"date-time","description":"Last update timestamp"},"origins":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Origin name (e.g., structure, energy, magnetism)"},"task_id":{"type":"string","description":"Task identifier for this origin"},"last_updated":{"type":"string","format":"date-time","description":"Last update for this origin"}},"required":["name","task_id","last_updated"]}},"warnings":{"type":"array","items":{"type":"string"},"description":"Warning messages"},"structure":{"type":"object","properties":{"@module":{"type":"string","description":"Python module name"},"@class":{"type":"string","description":"Python class name"},"charge":{"type":"number","description":"Total charge of the structure"},"lattice":{"type":"object","properties":{"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3,"description":"Lattice matrix"},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3,"description":"Periodic boundary conditions"},"a":{"type":"number","description":"Lattice parameter a"},"b":{"type":"number","description":"Lattice parameter b"},"c":{"type":"number","description":"Lattice parameter c"},"alpha":{"type":"number","description":"Lattice angle alpha"},"beta":{"type":"number","description":"Lattice angle beta"},"gamma":{"type":"number","description":"Lattice angle gamma"},"volume":{"type":"number","description":"Unit cell volume"}},"required":["matrix","pbc","a","b","c","alpha","beta","gamma","volume"]},"properties":{"type":"object","description":"Additional structure properties"},"sites":{"type":"array","items":{"type":"object","properties":{"species":{"type":"array","items":{"type":"object","properties":{"element":{"type":"string","description":"Chemical element"},"occu":{"type":"number","description":"Occupancy"}},"required":["element","occu"]}},"abc":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3,"description":"Fractional coordinates"},"properties":{"type":"object","properties":{"magmom":{"type":"number","description":"Magnetic moment"}}},"label":{"type":"string","description":"Site label"},"xyz":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3,"description":"Cartesian coordinates"}},"required":["species","abc","label","xyz"]}}},"required":["@module","@class","charge","lattice","properties","sites"]},"property_name":{"type":"string","description":"Name of the property endpoint"},"task_ids":{"type":"array","items":{"type":"string"},"description":"List of task identifiers"},"uncorrected_energy_per_atom":{"type":"number","description":"Uncorrected energy per atom in eV"},"energy_per_atom":{"type":"number","description":"Energy per atom in eV"},"formation_energy_per_atom":{"type":"number","description":"Formation energy per atom in eV"},"energy_above_hull":{"type":"number","description":"Energy above convex hull in eV"},"is_stable":{"type":"boolean","description":"Whether the material is thermodynamically stable"},"equilibrium_reaction_energy_per_atom":{"type":["number","null"],"description":"Equilibrium reaction energy per atom in eV"},"decomposes_to":{"oneOf":[{"type":"array","items":{"type":"object","properties":{"material_id":{"type":"string","description":"Material ID of decomposition product"},"formula":{"type":"string","description":"Formula of decomposition product"},"amount":{"type":"number","description":"Amount of decomposition product"}},"required":["material_id","formula","amount"]}},{"type":"null"}]},"xas":{"oneOf":[{"type":"array","items":{"type":"object","properties":{"edge":{"type":"string","description":"XAS edge type (K, L, M, etc.)"},"absorbing_element":{"type":"string","description":"Element for XAS absorption"},"spectrum_type":{"type":"string","description":"Type of XAS spectrum (XANES, EXAFS, XAFS)"}},"required":["edge","absorbing_element","spectrum_type"]}},{"type":"null"}]},"grain_boundaries":{"type":["object","null"],"description":"Grain boundary information"},"band_gap":{"type":"number","description":"Band gap in eV"},"cbm":{"type":["number","null"],"description":"Conduction band minimum in eV"},"vbm":{"type":["number","null"],"description":"Valence band maximum in eV"},"efermi":{"type":["number","null"],"description":"Fermi energy in eV"},"is_gap_direct":{"type":"boolean","description":"Whether the band gap is direct"},"is_metal":{"type":"boolean","description":"Whether the material is metallic"},"es_source_calc_id":{"type":["string","null"],"description":"Source calculation ID for electronic structure"},"bandstructure":{"oneOf":[{"type":"object","properties":{"setyawan_curtarolo":{"oneOf":[{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"oneOf":[{"type":"object","properties":{"band_index":{"type":"object","additionalProperties":{"type":"array","items":{"type":"number"}}},"kpoint_index":{"type":"array","items":{"type":"number"}},"kpoint":{"type":"object","properties":{"lattice":{"type":"object","properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}},"required":["@module","@class","matrix","pbc"]},"fcoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"ccoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}},"required":["lattice","fcoords","ccoords","label","@module","@class"]},"energy":{"type":"number"},"projections":{"type":"object","additionalProperties":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}},"required":["band_index","kpoint_index","kpoint","energy","projections"]},{"type":"null"}]},"vbm":{"oneOf":[{"type":"object","properties":{"band_index":{"type":"object","additionalProperties":{"type":"array","items":{"type":"number"}}},"kpoint_index":{"type":"array","items":{"type":"number"}},"kpoint":{"type":"object","properties":{"lattice":{"type":"object","properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}},"required":["@module","@class","matrix","pbc"]},"fcoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"ccoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}},"required":["lattice","fcoords","ccoords","label","@module","@class"]},"energy":{"type":"number"},"projections":{"type":"object","additionalProperties":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}},"required":["band_index","kpoint_index","kpoint","energy","projections"]},{"type":"null"}]},"efermi":{"type":["number","null"]},"is_gap_direct":{"type":"boolean"},"is_metal":{"type":"boolean"},"magnetic_ordering":{"type":"string"},"equivalent_labels":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"string"}}}},"nbands":{"type":"number"},"direct_gap":{"type":"number"}},"required":["task_id","band_gap","cbm","vbm","efermi","is_gap_direct","is_metal","magnetic_ordering","equivalent_labels","nbands","direct_gap"]},{"type":"null"}]},"hinuma":{"oneOf":[{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"oneOf":[{"type":"object","properties":{"band_index":{"type":"object","additionalProperties":{"type":"array","items":{"type":"number"}}},"kpoint_index":{"type":"array","items":{"type":"number"}},"kpoint":{"type":"object","properties":{"lattice":{"type":"object","properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}},"required":["@module","@class","matrix","pbc"]},"fcoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"ccoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}},"required":["lattice","fcoords","ccoords","label","@module","@class"]},"energy":{"type":"number"},"projections":{"type":"object","additionalProperties":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}},"required":["band_index","kpoint_index","kpoint","energy","projections"]},{"type":"null"}]},"vbm":{"oneOf":[{"type":"object","properties":{"band_index":{"type":"object","additionalProperties":{"type":"array","items":{"type":"number"}}},"kpoint_index":{"type":"array","items":{"type":"number"}},"kpoint":{"type":"object","properties":{"lattice":{"type":"object","properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}},"required":["@module","@class","matrix","pbc"]},"fcoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"ccoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}},"required":["lattice","fcoords","ccoords","label","@module","@class"]},"energy":{"type":"number"},"projections":{"type":"object","additionalProperties":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}},"required":["band_index","kpoint_index","kpoint","energy","projections"]},{"type":"null"}]},"efermi":{"type":["number","null"]},"is_gap_direct":{"type":"boolean"},"is_metal":{"type":"boolean"},"magnetic_ordering":{"type":"string"},"equivalent_labels":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"string"}}}},"nbands":{"type":"number"},"direct_gap":{"type":"number"}},"required":["task_id","band_gap","cbm","vbm","efermi","is_gap_direct","is_metal","magnetic_ordering","equivalent_labels","nbands","direct_gap"]},{"type":"null"}]},"latimer_munro":{"oneOf":[{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"oneOf":[{"type":"object","properties":{"band_index":{"type":"object","additionalProperties":{"type":"array","items":{"type":"number"}}},"kpoint_index":{"type":"array","items":{"type":"number"}},"kpoint":{"type":"object","properties":{"lattice":{"type":"object","properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}},"required":["@module","@class","matrix","pbc"]},"fcoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"ccoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}},"required":["lattice","fcoords","ccoords","label","@module","@class"]},"energy":{"type":"number"},"projections":{"type":"object","additionalProperties":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}},"required":["band_index","kpoint_index","kpoint","energy","projections"]},{"type":"null"}]},"vbm":{"oneOf":[{"type":"object","properties":{"band_index":{"type":"object","additionalProperties":{"type":"array","items":{"type":"number"}}},"kpoint_index":{"type":"array","items":{"type":"number"}},"kpoint":{"type":"object","properties":{"lattice":{"type":"object","properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}},"required":["@module","@class","matrix","pbc"]},"fcoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"ccoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}},"required":["lattice","fcoords","ccoords","label","@module","@class"]},"energy":{"type":"number"},"projections":{"type":"object","additionalProperties":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}},"required":["band_index","kpoint_index","kpoint","energy","projections"]},{"type":"null"}]},"efermi":{"type":["number","null"]},"is_gap_direct":{"type":"boolean"},"is_metal":{"type":"boolean"},"magnetic_ordering":{"type":"string"},"equivalent_labels":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"string"}}}},"nbands":{"type":"number"},"direct_gap":{"type":"number"}},"required":["task_id","band_gap","cbm","vbm","efermi","is_gap_direct","is_metal","magnetic_ordering","equivalent_labels","nbands","direct_gap"]},{"type":"null"}]}}},{"type":"null"}]},"dos":{"oneOf":[{"type":"object","properties":{"total":{"type":"object","additionalProperties":{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"type":["number","null"]},"vbm":{"type":["number","null"]},"efermi":{"type":"number"},"spin_polarization":{"type":["number","null"]}},"required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"]}},"elemental":{"type":"object","additionalProperties":{"type":"object","properties":{"total":{"type":"object","additionalProperties":{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"type":["number","null"]},"vbm":{"type":["number","null"]},"efermi":{"type":"number"},"spin_polarization":{"type":["number","null"]}},"required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"]}},"s":{"type":"object","additionalProperties":{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"type":["number","null"]},"vbm":{"type":["number","null"]},"efermi":{"type":"number"},"spin_polarization":{"type":["number","null"]}},"required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"]}},"p":{"type":"object","additionalProperties":{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"type":["number","null"]},"vbm":{"type":["number","null"]},"efermi":{"type":"number"},"spin_polarization":{"type":["number","null"]}},"required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"]}},"d":{"type":"object","additionalProperties":{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"type":["number","null"]},"vbm":{"type":["number","null"]},"efermi":{"type":"number"},"spin_polarization":{"type":["number","null"]}},"required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"]}}}}},"orbital":{"type":"object","properties":{"s":{"type":"object","additionalProperties":{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"type":["number","null"]},"vbm":{"type":["number","null"]},"efermi":{"type":"number"},"spin_polarization":{"type":["number","null"]}},"required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"]}},"p":{"type":"object","additionalProperties":{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"type":["number","null"]},"vbm":{"type":["number","null"]},"efermi":{"type":"number"},"spin_polarization":{"type":["number","null"]}},"required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"]}},"d":{"type":"object","additionalProperties":{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"type":["number","null"]},"vbm":{"type":["number","null"]},"efermi":{"type":"number"},"spin_polarization":{"type":["number","null"]}},"required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"]}}}},"magnetic_ordering":{"type":"string","description":"Magnetic ordering type"}}},{"type":"null"}]},"dos_energy_up":{"type":["object","null"],"description":"Density of states for spin up"},"dos_energy_down":{"type":["object","null"],"description":"Density of states for spin down"},"is_magnetic":{"type":"boolean","description":"Whether the material is magnetic"},"ordering":{"type":"string","description":"Magnetic ordering"},"total_magnetization":{"type":"number","description":"Total magnetization"},"total_magnetization_normalized_vol":{"type":"number","description":"Volume-normalized magnetization"},"total_magnetization_normalized_formula_units":{"type":"number","description":"Formula unit normalized magnetization"},"num_magnetic_sites":{"type":"number","description":"Number of magnetic sites"},"num_unique_magnetic_sites":{"type":"number","description":"Number of unique magnetic sites"},"types_of_magnetic_species":{"type":"array","items":{"type":"string"},"description":"Types of magnetic species"},"bulk_modulus":{"oneOf":[{"type":"object","properties":{"voigt":{"type":"number","description":"Voigt bulk modulus in GPa"},"reuss":{"type":"number","description":"Reuss bulk modulus in GPa"},"vrh":{"type":"number","description":"Voigt-Reuss-Hill bulk modulus in GPa"}},"required":["voigt","reuss","vrh"]},{"type":"null"}]},"shear_modulus":{"oneOf":[{"type":"object","properties":{"voigt":{"type":"number","description":"Voigt shear modulus in GPa"},"reuss":{"type":"number","description":"Reuss shear modulus in GPa"},"vrh":{"type":"number","description":"Voigt-Reuss-Hill shear modulus in GPa"}},"required":["voigt","reuss","vrh"]},{"type":"null"}]},"universal_anisotropy":{"oneOf":[{"type":"number"},{"type":"null"}],"description":"Universal anisotropy index"},"homogeneous_poisson":{"oneOf":[{"type":"number"},{"type":"null"}],"description":"Homogeneous Poisson ratio"},"e_total":{"type":["number","null"],"description":"Total energy"},"e_ionic":{"type":["number","null"],"description":"Ionic energy"},"e_electronic":{"type":["number","null"],"description":"Electronic energy"},"n":{"type":["number","null"],"description":"Refractive index"},"e_ij_max":{"type":["number","null"],"description":"Maximum elastic constant"},"weighted_surface_energy_EV_PER_ANG2":{"type":["number","null"],"description":"Weighted surface energy in eV/Ų"},"weighted_surface_energy":{"type":["number","null"],"description":"Weighted surface energy"},"weighted_work_function":{"type":["number","null"],"description":"Weighted work function"},"surface_anisotropy":{"type":["number","null"],"description":"Surface anisotropy"},"shape_factor":{"type":["number","null"],"description":"Shape factor"},"has_reconstructed":{"type":["boolean","null"],"description":"Whether surface has reconstruction"},"possible_species":{"oneOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"Possible ionic species"},"has_props":{"type":"object","properties":{"materials":{"type":"boolean"},"thermo":{"type":"boolean"},"xas":{"type":"boolean"},"grain_boundaries":{"type":"boolean"},"chemenv":{"type":"boolean"},"electronic_structure":{"type":"boolean"},"absorption":{"type":"boolean"},"bandstructure":{"type":"boolean"},"dos":{"type":"boolean"},"magnetism":{"type":"boolean"},"elasticity":{"type":"boolean"},"dielectric":{"type":"boolean"},"piezoelectric":{"type":"boolean"},"surface_properties":{"type":"boolean"},"oxi_states":{"type":"boolean"},"provenance":{"type":"boolean"},"charge_density":{"type":"boolean"},"eos":{"type":"boolean"},"phonon":{"type":"boolean"},"insertion_electrodes":{"type":"boolean"},"substrates":{"type":"boolean"}},"required":["materials","thermo","xas","grain_boundaries","chemenv","electronic_structure","absorption","bandstructure","dos","magnetism","elasticity","dielectric","piezoelectric","surface_properties","oxi_states","provenance","charge_density","eos","phonon","insertion_electrodes","substrates"]},"theoretical":{"type":"boolean","description":"Whether this is a theoretical material"},"database_IDs":{"type":"object","properties":{"icsd":{"type":"array","items":{"type":"string"},"description":"ICSD database identifiers"}}}},"required":["builder_meta","nsites","elements","nelements","composition","composition_reduced","formula_pretty","formula_anonymous","chemsys","volume","density","density_atomic","symmetry","material_id","deprecated","last_updated","origins","warnings","structure","property_name","task_ids","uncorrected_energy_per_atom","energy_per_atom","formation_energy_per_atom","energy_above_hull","is_stable","decomposes_to","xas","band_gap","cbm","vbm","efermi","is_gap_direct","is_metal","bandstructure","dos","is_magnetic","ordering","total_magnetization","total_magnetization_normalized_vol","total_magnetization_normalized_formula_units","num_magnetic_sites","num_unique_magnetic_sites","types_of_magnetic_species","bulk_modulus","shear_modulus","universal_anisotropy","homogeneous_poisson","possible_species","has_props","theoretical","database_IDs"],"definitions":{"bandstructure_data":{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"oneOf":[{"type":"object","properties":{"band_index":{"type":"object","additionalProperties":{"type":"array","items":{"type":"number"}}},"kpoint_index":{"type":"array","items":{"type":"number"}},"kpoint":{"type":"object","properties":{"lattice":{"type":"object","properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}},"required":["@module","@class","matrix","pbc"]},"fcoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"ccoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}},"required":["lattice","fcoords","ccoords","label","@module","@class"]},"energy":{"type":"number"},"projections":{"type":"object","additionalProperties":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}},"required":["band_index","kpoint_index","kpoint","energy","projections"]},{"type":"null"}]},"vbm":{"oneOf":[{"type":"object","properties":{"band_index":{"type":"object","additionalProperties":{"type":"array","items":{"type":"number"}}},"kpoint_index":{"type":"array","items":{"type":"number"}},"kpoint":{"type":"object","properties":{"lattice":{"type":"object","properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}},"required":["@module","@class","matrix","pbc"]},"fcoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"ccoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}},"required":["lattice","fcoords","ccoords","label","@module","@class"]},"energy":{"type":"number"},"projections":{"type":"object","additionalProperties":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}},"required":["band_index","kpoint_index","kpoint","energy","projections"]},{"type":"null"}]},"efermi":{"type":["number","null"]},"is_gap_direct":{"type":"boolean"},"is_metal":{"type":"boolean"},"magnetic_ordering":{"type":"string"},"equivalent_labels":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"string"}}}},"nbands":{"type":"number"},"direct_gap":{"type":"number"}},"required":["task_id","band_gap","cbm","vbm","efermi","is_gap_direct","is_metal","magnetic_ordering","equivalent_labels","nbands","direct_gap"]},"band_extrema":{"type":"object","properties":{"band_index":{"type":"object","additionalProperties":{"type":"array","items":{"type":"number"}}},"kpoint_index":{"type":"array","items":{"type":"number"}},"kpoint":{"type":"object","properties":{"lattice":{"type":"object","properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}},"required":["@module","@class","matrix","pbc"]},"fcoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"ccoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}},"required":["lattice","fcoords","ccoords","label","@module","@class"]},"energy":{"type":"number"},"projections":{"type":"object","additionalProperties":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}},"required":["band_index","kpoint_index","kpoint","energy","projections"]},"kpoint":{"type":"object","properties":{"lattice":{"type":"object","properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","items":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"pbc":{"type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}},"required":["@module","@class","matrix","pbc"]},"fcoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"ccoords":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}},"required":["lattice","fcoords","ccoords","label","@module","@class"]},"dos_data":{"type":"object","properties":{"task_id":{"type":"string"},"band_gap":{"type":"number"},"cbm":{"type":["number","null"]},"vbm":{"type":["number","null"]},"efermi":{"type":"number"},"spin_polarization":{"type":["number","null"]}},"required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"]}}},{"$id":"apse/db/materials-project/legacy/material","$schema":"http://json-schema.org/draft-07/schema#","title":"Materials Project Legacy Material schema","description":"JSON schema for Materials Project API legacy material endpoint response","type":"object","properties":{"energy":{"type":"number","description":"Total energy"},"energy_per_atom":{"type":"number","description":"Energy per atom"},"volume":{"type":"number","description":"Unit cell volume"},"formation_energy_per_atom":{"type":"number","description":"Formation energy per atom"},"nsites":{"type":"integer","description":"Number of sites in unit cell"},"unit_cell_formula":{"type":"object","description":"Unit cell formula as element counts","additionalProperties":{"type":"number"}},"pretty_formula":{"type":"string","description":"Pretty formatted chemical formula"},"is_hubbard":{"type":"boolean","description":"Whether Hubbard U correction was applied"},"elements":{"type":"array","description":"List of elements in the material","items":{"type":"string"}},"nelements":{"type":"integer","description":"Number of distinct elements"},"e_above_hull":{"type":["number","null"],"description":"Energy above convex hull"},"hubbards":{"type":"object","description":"Hubbard U values","additionalProperties":true},"is_compatible":{"type":"boolean","description":"Whether material is compatible"},"spacegroup":{"type":"object","description":"Spacegroup information","properties":{"symprec":{"type":"number"},"source":{"type":"string"},"symbol":{"type":"string"},"number":{"type":"integer"},"point_group":{"type":"string"},"crystal_system":{"type":"string"},"hall":{"type":"string"}}},"task_ids":{"type":"array","description":"List of task IDs","items":{"type":"string"}},"band_gap":{"type":"number","description":"Band gap value"},"density":{"type":"number","description":"Material density"},"icsd_id":{"type":["integer","null"],"description":"ICSD ID (single)"},"icsd_ids":{"type":"array","description":"List of ICSD IDs","items":{"type":"integer"}},"cif":{"type":"string","description":"CIF file content"},"total_magnetization":{"type":"number","description":"Total magnetization"},"material_id":{"type":"string","description":"Material ID from Materials Project"},"oxide_type":{"type":"string","description":"Oxide type classification"},"tags":{"type":"array","description":"Material tags/names","items":{"type":"string"}},"elasticity":{"type":["object","null"],"description":"Elasticity data","properties":{"G_Reuss":{"type":"number","description":"Reuss shear modulus in GPa"},"G_VRH":{"type":"number","description":"Voigt-Reuss-Hill shear modulus in GPa"},"G_Voigt":{"type":"number","description":"Voigt shear modulus in GPa"},"G_Voigt_Reuss_Hill":{"type":"number","description":"Voigt-Reuss-Hill shear modulus in GPa (alternative field)"},"K_Reuss":{"type":"number","description":"Reuss bulk modulus in GPa"},"K_VRH":{"type":"number","description":"Voigt-Reuss-Hill bulk modulus in GPa"},"K_Voigt":{"type":"number","description":"Voigt bulk modulus in GPa"},"K_Voigt_Reuss_Hill":{"type":"number","description":"Voigt-Reuss-Hill bulk modulus in GPa (alternative field)"},"elastic_anisotropy":{"type":"number","description":"Elastic anisotropy"},"elastic_tensor":{"type":"array","description":"6x6 elastic tensor in GPa","items":{"type":"array","items":{"type":"number"}}},"homogeneous_poisson":{"type":"number","description":"Homogeneous Poisson ratio"},"poisson_ratio":{"type":"number","description":"Poisson ratio"},"universal_anisotropy":{"type":"number","description":"Universal elastic anisotropy"},"elastic_tensor_original":{"type":"array","description":"Original 6x6 elastic tensor in GPa","items":{"type":"array","items":{"type":"number"}}},"compliance_tensor":{"type":"array","description":"6x6 compliance tensor in GPa^-1","items":{"type":"array","items":{"type":"number"}}},"warnings":{"type":"array","description":"Warnings about elastic properties","items":{"type":"string"}},"nsites":{"type":"integer","description":"Number of sites in the structure"}}},"piezo":{"type":["object","null"],"description":"Piezoelectric data"},"diel":{"type":["object","null"],"description":"Dielectric data"},"deprecated":{"type":"boolean","description":"Whether material is deprecated"},"full_formula":{"type":"string","description":"Full chemical formula"}},"required":["material_id","energy","energy_per_atom","volume","formation_energy_per_atom","nsites","unit_cell_formula","pretty_formula","is_hubbard","elements","nelements","e_above_hull","hubbards","is_compatible","spacegroup","task_ids","band_gap","density","icsd_ids","cif","total_magnetization","oxide_type","tags","deprecated","full_formula"]},{"$id":"apse/db/nist-jarvis/2024.3.13/atoms","$schema":"http://json-schema.org/draft-07/schema#","title":"NIST JARVIS Atoms schema","description":"NIST J.A.R.V.I.S. db entry `atoms` key schema. Based on https://figshare.com/articles/dataset/Monolayer_data_for_heterostructure/22344571","additionalProperties":false,"type":"object","properties":{"lattice_mat":{"type":"array","description":"Crystal lattice vectors as a 3x3 matrix, in Angstroms","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"coords":{"type":"array","description":"Atomic coordinates for each atom in the unit cell","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":1},"elements":{"type":"array","description":"Atomic elements for each atom in the unit cell in the same order as `coords`","items":{"type":"string"},"minItems":1},"abc":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"angles":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"cartesian":{"type":"boolean","description":"True if the coordinates are in Cartesian space, false if in fractional space"},"props":{"type":"array","items":{"type":"string"},"description":"Additional properties for each of the atoms"}}},{"$id":"apse/db/nist-jarvis/2024.3.13/db-entry","$schema":"http://json-schema.org/draft-07/schema#","title":"NIST JARVIS db entry schema","description":"NIST J.A.R.V.I.S. db entry `atoms` key schema. Based on https://figshare.com/articles/dataset/Monolayer_data_for_heterostructure/22344571","additionalProperties":true,"type":"object","properties":{"atoms":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NIST JARVIS Atoms schema","description":"NIST J.A.R.V.I.S. db entry `atoms` key schema. Based on https://figshare.com/articles/dataset/Monolayer_data_for_heterostructure/22344571","additionalProperties":false,"type":"object","properties":{"lattice_mat":{"type":"array","description":"Crystal lattice vectors as a 3x3 matrix, in Angstroms","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"coords":{"type":"array","description":"Atomic coordinates for each atom in the unit cell","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":1},"elements":{"type":"array","description":"Atomic elements for each atom in the unit cell in the same order as `coords`","items":{"type":"string"},"minItems":1},"abc":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"angles":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"cartesian":{"type":"boolean","description":"True if the coordinates are in Cartesian space, false if in fractional space"},"props":{"type":"array","items":{"type":"string"},"description":"Additional properties for each of the atoms"}}},"jid":{"type":"string","description":"The id of the entry in the database, e.g. JVASP-677"}}},{"$id":"apse/db/third-party-sources","$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]},{"$id":"apse/file/applications/espresso/7.2/pw.x/atomic-positions","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic positions schema","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1493","type":"object","additionalProperties":false,"properties":{"card_option":{"type":"string","enum":["alat","bohr","angstrom","crystal","crystal_sg"],"default":"alat"},"values":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}}},{"$id":"apse/file/applications/espresso/7.2/pw.x/atomic-species","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic species schema","type":"object","additionalProperties":false,"properties":{"values":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}}}},{"$id":"apse/file/applications/espresso/7.2/pw.x/cell","$schema":"http://json-schema.org/draft-07/schema#","title":"cell schema","type":"object","additionalProperties":false,"oneOf":[{"type":"object","additionalProperties":false,"properties":{"cell_dynamics":{"type":"string","enum":["none","sd","damp-pr","damp-w","bfgs"],"default":"bfgs","description":"CASE ( calculation == 'vc-relax' )"}}},{"type":"object","additionalProperties":false,"properties":{"cell_dynamics":{"type":"string","enum":["none","pr","w"],"description":"CASE ( calculation == 'vc-md' )"}}}],"properties":{"press":{"type":"number","description":"Target pressure [KBar] in a variable-cell md or relaxation run.","default":0},"wmass":{"type":"number","description":"Fictitious cell mass [amu] for variable-cell simulations (both 'vc-md' and 'vc-relax'). Default: 0.75*Tot_Mass/pi**2 for Parrinello-Rahman MD; 0.75*Tot_Mass/pi**2/Omega**(2/3) for Wentzcovitch MD"},"cell_factor":{"type":"number","description":"Used in the construction of the pseudopotential tables. It should exceed the maximum linear contraction of the cell during a simulation. Default: 2.0 for variable-cell calculations, 1.0 otherwise"},"press_conv_thr":{"type":"number","default":0.5,"description":"Convergence threshold on the pressure for variable cell relaxation ('vc-relax' : note that the other convergence thresholds for ionic relaxation apply as well)."},"cell_dofree":{"type":"string","enum":["all","ibrav","a","b","c","fixa","fixb","fixc","x","y","xy","xz","xyz","shape","volume","2Dxy","2Dshape","epitaxial_ab","epitaxial_ac","epitaxial_bc"],"default":"all","description":"Select which of the cell parameters should be moved"}}},{"$id":"apse/file/applications/espresso/7.2/pw.x/cell-parameters","$schema":"http://json-schema.org/draft-07/schema#","title":"cell parameters schema","type":"object","additionalProperties":false,"properties":{"card_option":{"type":"string","enum":["alat","bohr","angstrom"],"description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"values":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"$id":"apse/file/applications/espresso/7.2/pw.x/control","$schema":"http://json-schema.org/draft-07/schema#","title":"control schema","type":"object","additionalProperties":false,"properties":{"calculation":{"description":"A string describing the task to be performed","type":"string","enum":["scf","nscf","bands","relax","md","vc-relax","vc-md"],"default":"scf"},"title":{"description":"reprinted on output.","type":"string","default":""},"verbosity":{"description":"Currently two verbosity levels are implemented: high, low. 'debug' and 'medium' have the same effect as 'high'; 'default' and 'minimal' as 'low'","type":"string","enum":["high","low","debug","medium","minimal","default"],"default":"low"},"restart_mode":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"wf_collect":{"type":"boolean","description":"OBSOLETE - NO LONGER IMPLEMENTED"},"nstep":{"description":"Default: 1 if calculation == 'scf', 'nscf', 'bands'; 50 for the other cases; Number of molecular-dynamics or structural optimization steps performed in this run. If set to 0, the code performs a quick \"dry run\", stopping just after initialization. This is useful to check for input correctness and to have the summary printed. NOTE: in MD calculations, the code will perform \"nstep\" steps even if restarting from a previously interrupted calculation.","type":"number","default":1},"iprint":{"description":"band energies are written every iprint iterations","type":"number"},"tstress":{"type":"boolean","default":false,"description":"calculate stress. It is set to .TRUE. automatically if calculation == 'vc-md' or 'vc-relax'"},"tprnfor":{"type":"boolean","description":"calculate forces. It is set to .TRUE. automatically if calculation == 'relax','md','vc-md'"},"dt":{"type":"number","description":"time step for molecular dynamics, in Rydberg atomic units (1 a.u.=4.8378 * 10^-17 s : beware, the CP code uses Hartree atomic units, half that much!!!)","default":20},"outdir":{"type":"string","description":"input, temporary, output files are found in this directory, see also wfcdir"},"wfcdir":{"type":"string","description":"This directory specifies where to store files generated by each processor (*.wfc{N}, *.igk{N}, etc.). Useful for machines without a parallel file system: set wfcdir to a local file system, while outdir should be a parallel or network file system, visible to all processors. Beware: in order to restart from interrupted runs, or to perform further calculations using the produced data files, you may need to copy files to outdir. Works only for pw.x."},"prefix":{"type":"string","description":"prepended to input/output filenames: prefix.wfc, prefix.rho, etc.","default":"pwscf"},"lkpoint_dir":{"type":"boolean","description":"OBSOLETE - NO LONGER IMPLEMENTED"},"max_seconds":{"type":"number","default":10000000,"description":"Jobs stops after max_seconds CPU time. Use this option in conjunction with option restart_mode if you need to split a job too long to complete into shorter jobs that fit into your batch queues."},"etot_conv_thr":{"type":"number","default":0.0001,"description":"Convergence threshold on total energy (a.u) for ionic minimization: the convergence criterion is satisfied when the total energy changes less than etot_conv_thr between two consecutive scf steps. Note that etot_conv_thr is extensive, like the total energy. See also forc_conv_thr - both criteria must be satisfied"},"forc_conv_thr":{"type":"number","default":0.001,"description":"Convergence threshold on forces (a.u) for ionic minimization: the convergence criterion is satisfied when all components of all forces are smaller than forc_conv_thr. See also etot_conv_thr - both criteria must be satisfied"},"disk_io":{"type":"string","enum":["high","medium","low","nowf","none"],"description":"Specifies the amount of disk I/O activity: (only for binary files and xml data file in data directory; other files printed at each molecular dynamics / structural optimization step are not controlled by this option )"},"pseudo_dir":{"type":"string","description":"directory containing pseudopotential files. Default: value of the $ESPRESSO_PSEUDO environment variable if set; '$HOME/espresso/pseudo/' otherwise"},"tefield":{"type":"boolean","default":false,"description":"If .TRUE. a saw-like potential simulating an electric field is added to the bare ionic potential. See variables edir, eamp, emaxpos, eopreg for the form and size of the added potential."},"dipfield":{"type":"boolean","default":false,"description":"If .TRUE. and tefield==.TRUE. a dipole correction is also added to the bare ionic potential - implements the recipe of L. Bengtsson, PRB 59, 12301 (1999). See variables edir, emaxpos, eopreg for the form of the correction. Must be used ONLY in a slab geometry, for surface calculations, with the discontinuity FALLING IN THE EMPTY SPACE."},"lelfield":{"type":"boolean","default":false,"description":"If .TRUE. a homogeneous finite electric field described through the modern theory of the polarization is applied. This is different from tefield == .true. !"},"nberrycyc":{"type":"integer","default":1,"description":"In the case of a finite electric field ( lelfield == .TRUE. ) it defines the number of iterations for converging the wavefunctions in the electric field Hamiltonian, for each external iteration on the charge density"},"lorbm":{"type":"boolean","default":false,"description":"If .TRUE. perform orbital magnetization calculation."},"lberry":{"type":"boolean","default":false,"description":"If .TRUE. perform a Berry phase calculation. See the header of PW/src/bp_c_phase.f90 for documentation"},"gdir":{"type":"number","description":"For Berry phase calculation: direction of the k-point strings in reciprocal space. Allowed values: 1, 2, 3 1=first, 2=second, 3=third reciprocal lattice vector For calculations with finite electric fields (lelfield==.true.) \"gdir\" is the direction of the field."},"nppstr":{"type":"number","description":"For Berry phase calculation: number of k-points to be calculated along each symmetry-reduced string. The same for calculation with finite electric fields (lelfield==.true.)."},"gate":{"type":"boolean","default":false,"description":"In the case of charged cells (tot_charge .ne. 0) setting gate = .TRUE. represents the counter charge (i.e. -tot_charge) not by a homogeneous background charge but with a charged plate, which is placed at zgate (see below). Details of the gate potential can be found in T. Brumme, M. Calandra, F. Mauri; PRB 89, 245406 (2014). Note, that in systems which are not symmetric with respect to the plate, one needs to enable the dipole correction! (dipfield=.true.). Currently, symmetry can be used with gate=.true. but carefully check that no symmetry is included which maps z to -z even if in principle one could still use them for symmetric systems (i.e. no dipole correction). For nosym=.false. verbosity is set to 'high'. Note: this option was called \"monopole\" in v6.0 and 6.1 of pw.x"},"twochem":{"type":"boolean","default":false,"description":"IF .TRUE. , a two chemical potential calculation for the simulation of photoexcited systems is performed, constraining a fraction of the electrons in the conduction manifold."},"lfcp":{"type":"boolean","default":false,"description":"If .TRUE. perform a constant bias potential (constant-mu) calculation for a system with ESM method. See the header of PW/src/fcp_module.f90 for documentation. To perform the calculation, you must set a namelist FCP."},"trism":{"type":"boolean","default":false,"description":"If .TRUE. perform a 3D-RISM-SCF calculation [for details see H.Sato et al., JCP 112, 9463 (2000), doi:10.1063/1.481564]. The solvent's distributions are calculated by 3D-RISM, though solute is treated as SCF. The charge density and the atomic positions are optimized, simultaneously with the solvents. To perform the calculation, you must set a namelist RISM and a card SOLVENTS. If assume_isolated = 'esm' and esm_bc = 'bc1', Laue-RISM is calculated instead of 3D-RISM and coupled with ESM method (i.e. ESM-RISM). [for details see S.Nishihara and M.Otani, PRB 96, 115429 (2017)]. The default of mixing_beta is 0.2 for both 3D-RISM and Laue-RISM. For structural relaxation with BFGS, ignore_wolfe is always .TRUE. ."}}},{"$id":"apse/file/applications/espresso/7.2/pw.x/electrons","$schema":"http://json-schema.org/draft-07/schema#","title":"electrons schema","type":"object","additionalProperties":false,"properties":{"electron_maxstep":{"type":"integer","default":100,"description":"maximum number of iterations in a scf step. If exact exchange is active, this will affect the inner loops."},"exx_maxstep":{"type":"integer","default":100,"description":"maximum number of outer iterations in a scf calculation with exact exchange."},"scf_must_converge":{"type":"boolean","default":true,"description":"If .false. do not stop molecular dynamics or ionic relaxation when electron_maxstep is reached. Use with care."},"conv_thr":{"type":"number"},"adaptive_thr":{"type":"boolean","default":false,"description":"If .TRUE. this turns on the use of an adaptive conv_thr for the inner scf loops when using EXX."},"conv_thr_init":{"type":"number","description":"When adaptive_thr = .TRUE. this is the convergence threshold used for the first scf cycle."},"conv_thr_multi":{"type":"number","description":"When adaptive_thr = .TRUE. the convergence threshold for each scf cycle is given by: max( conv_thr, conv_thr_multi * dexx )"},"mixing_mode":{"type":"string","enum":["plain","TF","local-TF"],"default":"plain"},"mixing_beta":{"type":"number","description":"mixing factor for self-consistency"},"mixing_ndim":{"type":"integer","default":8,"description":"number of iterations used in mixing scheme"},"mixing_fixed_ns":{"type":"integer","default":0,"description":"For DFT+U : number of iterations with fixed ns ( ns is the atomic density appearing in the Hubbard term )."},"diagonalization":{"type":"string","enum":["david","cg","ppcg","paro","ParO","rmm-davidson","rmm-paro"],"default":"david"},"diago_thr_init":{"type":"number","description":"Convergence threshold (ethr) for iterative diagonalization (the check is on eigenvalue convergence)."},"diago_cg_maxiter":{"type":"integer","description":"For conjugate gradient diagonalization: max number of iterations"},"diago_ppcg_maxiter":{"type":"integer","description":"For ppcg diagonalization: max number of iterations"},"diago_david_ndim":{"type":"integer","default":2,"description":"For Davidson diagonalization: dimension of workspace (number of wavefunction packets, at least 2 needed)."},"diago_rmm_ndim":{"type":"integer","default":4,"description":"For RMM-DIIS diagonalization: dimension of workspace (number of wavefunction packets, at least 2 needed)."},"diago_rmm_conv":{"type":"boolean","default":false,"description":"If .TRUE., RMM-DIIS is performed up to converge. If .FALSE., RMM-DIIS is performed only once."},"diago_gs_nblock":{"type":"integer","default":16,"description":"For RMM-DIIS diagonalization: blocking size of Gram-Schmidt orthogonalization"},"diago_full_acc":{"type":"boolean","default":false,"description":"If .TRUE. all the empty states are diagonalized at the same level of accuracy of the occupied ones. Otherwise the empty states are diagonalized using a larger threshold (this should not affect total energy, forces, and other ground-state properties)."},"efield":{"type":"number","description":"Amplitude of the finite electric field (in Ry a.u.; 1 a.u. = 36.3609*10^10 V/m). Used only if lelfield==.TRUE. and if k-points (K_POINTS card) are not automatic."},"efield_cart":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"efield_phase":{"type":"string","enum":["read","write","none"],"default":"none"},"startingpot":{"type":"string","enum":["atomic","file"]},"startingwfc":{"type":"string","enum":["atomic","atomic+random","random","file"],"default":"atomic+random"},"tqr":{"type":"boolean","default":false,"description":"If .true., use a real-space algorithm for augmentation charges of ultrasoft pseudopotentials and PAWsets. Faster but numerically less accurate than the default G-space algorithm. Use with care and after testing!"},"real_space":{"type":"boolean","default":false,"description":"If .true., exploit real-space localization to compute matrix elements for nonlocal projectors. Faster and in principle better scaling than the default G-space algorithm, but numerically less accurate, may lead to some loss of translational invariance. Use with care and after testing!"}}},{"$id":"apse/file/applications/espresso/7.2/pw.x/hubbard","$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard schema","type":"object","additionalProperties":false,"properties":{"card_option":{"type":"string","enum":["atomic","ortho-atomic","norm-atomic","wf","pseudo"]},"values":{"oneOf":[{"description":"IF DFT+U","type":"array","items":{"oneOf":[{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1764","additionalProperties":false,"properties":{"U":{"type":"string","enum":["U"],"description":"string constant \"U\"; indicates the specs for the U parameter will be given"},"label":{"type":"string","description":"label of the atom (as defined in ATOMIC_SPECIES)"},"manifold":{"type":"string","description":"specs of the manifold (e.g., 3d, 2p...)"},"u_val":{"type":"number","description":"value of the U parameter (in eV)"}}},{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1784","additionalProperties":false,"properties":{"J0":{"type":"string","enum":["J0"],"description":"string constant \"J0\"; indicates the specs for the J0 parameter will be given"},"label":{"type":"string","description":"label of the atom (as defined in ATOMIC_SPECIES)"},"manifold":{"type":"string","description":"specs of the manifold (e.g., 3d, 2p...)"},"j0_val":{"type":"number","description":"value of the J0 parameter (in eV)"}}}]}},{"description":"IF DFT+U+J","type":"array","items":{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1817","additionalProperties":false,"properties":{"paramType":{"type":"string","enum":["U","J","B","E2","E3"],"description":"character describing the type of Hubbard parameter allowed values: U, J and either B (for d-orbitals) or E2 and E3 (for f-orbitals)"},"label":{"type":"string","description":"label of the atom (as defined in ATOMIC_SPECIES)"},"manifold":{"type":"string","description":"specs of the manifold (e.g., 3d, 2p...)"},"paramValue":{"type":"number","description":"value of the J0 parameter (in eV)"}}}},{"description":"IF DFT+U+V","type":"array","items":{"oneOf":[{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1847","additionalProperties":false,"properties":{"U":{"type":"string","enum":["U"],"description":"string constant \"U\"; indicates the specs for the U parameter will be given"},"label":{"type":"string","description":"label of the atom (as defined in ATOMIC_SPECIES)"},"manifold":{"type":"string","description":"specs of the manifold (e.g., 3d, 2p...)"},"u_val":{"type":"number","description":"value of the U parameter (in eV)"}}},{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1865","additionalProperties":false,"properties":{"J0":{"type":"string","enum":["J0"],"description":"string constant \"J0\"; indicates the specs for the J0 parameter will be given"},"label":{"type":"string","description":"label of the atom (as defined in ATOMIC_SPECIES)"},"manifold":{"type":"string","description":"specs of the manifold (e.g., 3d, 2p...)"},"j0_val":{"type":"number","description":"value of the J0 parameter (in eV)"}}},{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1884","additionalProperties":false,"properties":{"V":{"type":"string","enum":["V"],"description":"string constant \"V\"; indicates the specs for the V parameter will be given"},"label(I)":{"type":"string","description":"label of the atom I (as defined in ATOMIC_SPECIES)"},"manifold(I)":{"type":"string","description":"specs of the manifold for atom I (e.g., 3d, 2p...)"},"label(J)":{"type":"string","description":"label of the atom J (as defined in ATOMIC_SPECIES)"},"manifold(J)":{"type":"string","description":"specs of the manifold for atom J (e.g., 3d, 2p...)"},"I":{"type":"integer","description":"index of the atom I"},"J":{"type":"integer","description":"index of the atom J"},"v_val(I,J)":{"type":"number","description":"value of the V parameter for the atom pair I,J (in eV)"}}}]}}]}}},{"$id":"apse/file/applications/espresso/7.2/pw.x/ions","$schema":"http://json-schema.org/draft-07/schema#","title":"ions schema","type":"object","additionalProperties":false,"oneOf":[{"type":"object","additionalProperties":false,"properties":{"ion_dynamics":{"type":"string","enum":["bfgs","damp","fire"],"default":"bfgs","description":"CASE: calculation == 'relax'"}}},{"type":"object","additionalProperties":false,"properties":{"ion_dynamics":{"type":"string","enum":["verlet","langevin","langevin-smc"],"default":"verlet","description":"CASE: calculation == 'md'"}}},{"type":"object","additionalProperties":false,"properties":{"ion_dynamics":{"type":"string","enum":["bfgs","damp"],"default":"bfgs","description":"CASE: calculation == 'vc-relax'"}}},{"type":"object","additionalProperties":false,"properties":{"ion_dynamics":{"type":"string","enum":["beeman"],"default":"beeman","description":"CASE: calculation == 'vc-md'"}}}],"properties":{"ion_positions":{"type":"string","enum":["default","from_input"],"default":"default"},"ion_velocities":{"type":"string","enum":["default","from_input"],"default":"default"},"pot_extrapolation":{"type":"string","enum":["none","atomic","first_order","second_order"],"default":"atomic","description":"Used to extrapolate the potential from preceding ionic steps."},"wfc_extrapolation":{"type":"string","enum":["none","first_order","second_order"],"default":"none","description":"Used to extrapolate the wavefunctions from preceding ionic steps."},"remove_rigid_rot":{"type":"boolean","default":false,"description":"This keyword is useful when simulating the dynamics and/or the thermodynamics of an isolated system. If set to true the total torque of the internal forces is set to zero by adding new forces that compensate the spurious interaction with the periodic images. This allows for the use of smaller supercells."},"ion_temperature":{"type":"string","enum":["rescaling","rescale-v","rescale-T","reduce-T","berendsen","andersen","svr","initial","not_controlled"],"default":"not_controlled"},"tempw":{"type":"number","description":"Starting temperature (Kelvin) in MD runs target temperature for most thermostats.","default":300},"tolp":{"type":"number","description":"Tolerance for velocity rescaling. Velocities are rescaled if the run-averaged and target temperature differ more than tolp.","default":100},"delta_t":{"type":"number","default":1},"nraise":{"type":"integer","default":1},"refold_pos":{"type":"boolean","default":false,"description":"This keyword applies only in the case of molecular dynamics or damped dynamics. If true the ions are refolded at each step into the supercell."},"upscale":{"type":"number","description":"Max reduction factor for conv_thr during structural optimization conv_thr is automatically reduced when the relaxation approaches convergence so that forces are still accurate, but conv_thr will not be reduced to less that conv_thr / upscale.","default":100},"bfgs_ndim":{"type":"integer","default":1,"description":"Number of old forces and displacements vectors used in the PULAY mixing of the residual vectors obtained on the basis of the inverse hessian matrix given by the BFGS algorithm."},"trust_radius_max":{"type":"number","description":"Maximum ionic displacement in the structural relaxation. (bfgs only)","default":0.8},"trust_radius_min":{"type":"number","description":"Minimum ionic displacement in the structural relaxation BFGS is reset when trust_radius < trust_radius_min. (bfgs only)","default":0.001},"trust_radius_ini":{"type":"number","description":"Initial ionic displacement in the structural relaxation. (bfgs only)","default":0.5},"w_1":{"type":"number","default":0.01},"w_2":{"type":"number","description":"Parameters used in line search based on the Wolfe conditions. (bfgs only)","default":0.5},"fire_alpha_init":{"type":"number","description":"Initial value of the alpha mixing factor in the FIRE minimization scheme; recommended values are between 0.1 and 0.3","default":0.2},"fire_falpha":{"type":"number","description":"Scaling of the alpha mixing parameter for steps with P > 0;","default":0.99},"fire_nmin":{"type":"integer","default":5,"description":"Minimum number of steps with P > 0 before increase of dt"},"fire_f_inc":{"type":"number","description":"Factor for increasing dt","default":1.1},"fire_f_dec":{"type":"number","description":"Factor for decreasing dt","default":0.5},"fire_dtmax":{"type":"number","description":"Determines the maximum value of dt in the FIRE minimization; dtmax = fire_dtmax*dt","default":10}}},{"$id":"apse/file/applications/espresso/7.2/pw.x/k-points","$schema":"http://json-schema.org/draft-07/schema#","title":"k points schema","type":"object","additionalProperties":false,"properties":{"card_option":{"type":"string","enum":["tpiba","automatic","crystal","gamma","tpiba_b","crystal_b","tpiba_c","crystal_c"]},"values":{"oneOf":[{"type":"array","description":"K_POINTS tpiba | crystal | tpiba_b | crystal_b | tpiba_c | crystal_c","items":{"type":"object","additionalProperties":false,"properties":{"nks":{"type":"integer","description":"Number of supplied special k-points."},"xk_x":{"type":"number"},"xk_y":{"type":"number"},"xk_z":{"type":"number"},"wk":{"type":"number"}}}},{"type":"object","description":"K_POINTS automatic","additionalProperties":false,"properties":{"nk1":{"type":"integer","description":"Number of supplied special k-points."},"nk2":{"type":"integer","description":"Number of supplied special k-points."},"nk3":{"type":"integer","description":"Number of supplied special k-points."},"sk1":{"type":"integer","description":"Number of supplied special k-points."},"sk2":{"type":"integer","description":"Number of supplied special k-points."},"sk3":{"type":"integer","description":"Number of supplied special k-points."}}},{"type":"null","description":"K_POINTS gamma"}]}}},{"$id":"apse/file/applications/espresso/7.2/pw.x/system","$schema":"http://json-schema.org/draft-07/schema#","title":"system schema","type":"object","additionalProperties":false,"anyOf":[{"properties":{"celldm":{"type":"array","items":{"type":"number"},"minItems":6,"maxItems":6}}},{"properties":{"A":{"type":"number"},"B":{"type":"number"},"C":{"type":"number"},"cosAB":{"type":"number"},"cosAC":{"type":"number"},"cosBC":{"type":"number"}}}],"properties":{"ibrav":{"type":"integer"},"nat":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"ntyp":{"type":"integer","description":"number of types of atoms in the unit cell"},"nbnd":{"type":"integer","description":"Default: for an insulator, nbnd = number of valence bands (nbnd = # of electrons /2); for a metal, 20% more (minimum 4 more)"},"nbnd_cond":{"type":"integer","description":"Default: nbnd_cond = nbnd - # of electrons / 2 in the collinear case; nbnd_cond = nbnd - # of electrons in the noncollinear case."},"tot_charge":{"type":"number","default":0},"starting_charge":{"type":"number","default":0,"description":"starting charge on atomic type 'i', to create starting potential with startingpot = 'atomic'."},"tot_magnetization":{"type":"number","default":-10000,"description":"Total majority spin charge - minority spin charge. Used to impose a specific total electronic magnetization. If unspecified then tot_magnetization variable is ignored and the amount of electronic magnetization is determined during the self-consistent cycle."},"starting_magnetization":{"type":"array","items":{"type":"number","default":0,"minimum":-1,"maximum":1}},"ecutwfc":{"type":"number","description":"kinetic energy cutoff (Ry) for wavefunctions"},"ecutrho":{"type":"number","description":"Kinetic energy cutoff (Ry) for charge density and potential For norm-conserving pseudopotential you should stick to the default value, you can reduce it by a little but it will introduce noise especially on forces and stress. Default: 4 * ecutwfc"},"ecutfock":{"type":"number","description":"Kinetic energy cutoff (Ry) for the exact exchange operator in EXX type calculations. By default this is the same as ecutrho but in some EXX calculations, a significant speed-up can be obtained by reducing ecutfock, at the expense of some loss in accuracy. Must be .gt. ecutwfc. Not implemented for stress calculation and for US-PP and PAW pseudopotentials."},"nr1":{"type":"integer","description":"Three-dimensional FFT mesh (hard grid) for charge density (and scf potential). If not specified the grid is calculated based on the cutoff for charge density (see also ecutrho)"},"nr2":{"type":"integer","description":"Three-dimensional FFT mesh (hard grid) for charge density (and scf potential). If not specified the grid is calculated based on the cutoff for charge density (see also ecutrho)"},"nr3":{"type":"integer","description":"Three-dimensional FFT mesh (hard grid) for charge density (and scf potential). If not specified the grid is calculated based on the cutoff for charge density (see also ecutrho)"},"nr1s":{"type":"integer","description":"Three-dimensional mesh for wavefunction FFT and for the smooth part of charge density ( smooth grid ). Coincides with nr1, nr2, nr3 if ecutrho = 4 * ecutwfc ( default )"},"nr2s":{"type":"integer","description":"Three-dimensional mesh for wavefunction FFT and for the smooth part of charge density ( smooth grid ). Coincides with nr1, nr2, nr3 if ecutrho = 4 * ecutwfc ( default )"},"nr3s":{"type":"integer","description":"Three-dimensional mesh for wavefunction FFT and for the smooth part of charge density ( smooth grid ). Coincides with nr1, nr2, nr3 if ecutrho = 4 * ecutwfc ( default )"},"nosym":{"type":"boolean","default":false},"nosym_evc":{"type":"boolean","default":false},"noinv":{"type":"boolean","default":false,"description":"if (.TRUE.) disable the usage of k => -k symmetry (time reversal) in k-point generation"},"no_t_rev":{"type":"boolean","default":false,"description":"if (.TRUE.) disable the usage of magnetic symmetry operations that consist in a rotation + time reversal."},"force_symmorphic":{"type":"boolean","default":false,"description":"if (.TRUE.) force the symmetry group to be symmorphic by disabling symmetry operations having an associated fractionary translation"},"use_all_frac":{"type":"boolean","default":false},"occupations":{"type":"string","enum":["smearing","tetrahedra","tetrahedra_lin","tetrahedra_opt","fixed","from_input"]},"one_atom_occupations":{"type":"boolean","default":false},"starting_spin_angle":{"type":"boolean","default":false},"degauss_cond":{"type":"number","default":0,"description":"value of the gaussian spreading (Ry) for brillouin-zone integration in the conduction manifold in a two-chemical potential calculation (twochem=.true.)."},"nelec_cond":{"type":"number","default":0,"description":"Number of electrons placed in the conduction manifold in a two-chemical potential calculation (twochem=.true.). Of the total # of electrons nelec, nelec-nelec_cond will occupy the valence manifold and nelec_cond will be constrained in the conduction manifold."},"degauss":{"type":"number","default":0,"description":"value of the gaussian spreading (Ry) for brillouin-zone integration in metals."},"smearing":{"type":"string","enum":["gaussian","gauss","methfessel-paxton","m-p","mp","marzari-vanderbilt","cold","m-v","mv","fermi-dirac","f-d","fd"],"default":"gaussian"},"nspin":{"type":"integer","default":1},"sic_gamma":{"type":"number","default":0,"description":"Strength of the gammaDFT potential."},"pol_type":{"type":"string","enum":["e","h"],"description":"Type of polaron in gammaDFT."},"sic_energy":{"type":"boolean","default":false,"description":"Enable the calculation of the total energy in gammaDFT. When .true., a preliminary calculation is performed to calculate the electron density in the absence of the polaron. When .false., the total energy printed in output should not be considered. For structural relaxations, it is recommended to use .false. to avoid doubling the computational cost."},"sci_vb":{"type":"number","default":0,"description":"Valence band shift (in eV) through self-consistent scissor operator. When performing gammaDFT calculations of polarons, the polaron level is not shifted."},"sci_cb":{"type":"number","default":0,"description":"Conduction band band shift (in eV) through self-consistent scissor operator. When performing gammaDFT calculations of polarons, the polaron level is not shifted."},"noncolin":{"type":"boolean","default":false,"description":"if .true. the program will perform a noncollinear calculation."},"ecfixed":{"type":"number","default":0},"qcutz":{"type":"number","default":0},"q2sigma":{"type":"number","default":0.1},"input_dft":{"type":"string","description":"Exchange-correlation functional: eg 'PBE', 'BLYP' etc See Modules/funct.f90 for allowed values. Overrides the value read from pseudopotential files. Use with care and if you know what you are doing!"},"ace":{"type":"boolean","default":true,"description":"Use Adaptively Compressed Exchange operator as in Lin Lin, J. Chem. Theory Comput. 2016, 12, 2242--2249, doi:10.1021/acs.jctc.6b00092"},"exx_fraction":{"type":"number","description":"Fraction of EXX for hybrid functional calculations. In the case of input_dft='PBE0', the default value is 0.25, while for input_dft='B3LYP' the exx_fraction default value is 0.20."},"screening_parameter":{"type":"number","default":0.106,"description":"screening_parameter for HSE like hybrid functionals."},"exxdiv_treatment":{"type":"string","default":"gygi-baldereschi","enum":["gygi-baldereschi","vcut_spherical","vcut_ws","none"]},"x_gamma_extrapolation":{"type":"boolean","default":true,"description":"Specific for EXX. If .true., extrapolate the G=0 term of the potential"},"ecutvcut":{"type":"number","description":"Reciprocal space cutoff for correcting Coulomb potential divergencies at small q vectors."},"nqx1":{"type":"integer","default":0,"description":"Three-dimensional mesh for q (k1-k2) sampling of the Fock operator (EXX). Can be smaller than the number of k-points."},"nqx2":{"type":"integer","description":"Three-dimensional mesh for q (k1-k2) sampling of the Fock operator (EXX). Can be smaller than the number of k-points."},"nqx3":{"type":"integer","description":"Three-dimensional mesh for q (k1-k2) sampling of the Fock operator (EXX). Can be smaller than the number of k-points."},"localization_thr":{"type":"number","default":0,"description":"Overlap threshold over which the exchange integral over a pair of localized orbitals is included in the evaluation of EXX operator. Any value greater than 0.0 triggers the SCDM localization and the evaluation on EXX using the localized orbitals. Very small value of the threshold should yield the same result as the default EXX evaluation"},"Hubbard_occ":{"type":"array","items":{"type":"array","items":[{"type":"integer","minimum":1},{"type":"integer","minimum":1,"maximum":3},{"type":"number"}],"minItems":3,"maxItems":3}},"Hubbard_alpha":{"type":"array","items":{"type":"number","default":0}},"Hubbard_beta":{"type":"array","items":{"type":"number","default":0}},"starting_ns_eigenvalue":{"type":"array","items":{"type":"array","items":{"type":"array","items":{"type":"number"}}}},"dmft":{"type":"boolean","default":false,"description":"If true, nscf calculation will exit in restart mode, scf calculation will restart from there if DMFT updates are provided as hdf5 archive. Scf calculation should be used only with electron_maxstep = 1."},"dmft_prefix":{"type":"string","description":"prepended to hdf5 archive: dmft_prefix.h5"},"ensemble_energies":{"type":"boolean","default":false,"description":"If ensemble_energies = .true., an ensemble of xc energies is calculated non-selfconsistently for perturbed exchange-enhancement factors and LDA vs. PBE correlation ratios after each converged electronic ground state calculation."},"edir":{"type":"integer","description":"The direction of the electric field or dipole correction is parallel to the bg(:,edir) reciprocal lattice vector, so the potential is constant in planes defined by FFT grid points; edir = 1, 2 or 3. Used only if tefield is .TRUE."},"emaxpos":{"type":"number","default":0.5,"description":"Position of the maximum of the saw-like potential along crystal axis edir, within the unit cell (see below), 0 < emaxpos < 1 Used only if tefield is .TRUE."},"eopreg":{"type":"number","default":0.1,"description":"Zone in the unit cell where the saw-like potential decreases. ( see below, 0 < eopreg < 1 ). Used only if tefield is .TRUE."},"eamp":{"type":"number","default":0.001},"angle1":{"type":"array","items":{"type":"number"},"maxItems":1,"minItems":1,"description":"The angle expressed in degrees between the initial magnetization and the z-axis. For noncollinear calculations only; index i runs over the atom types."},"angle2":{"type":"array","items":{"type":"number"},"maxItems":1,"minItems":1,"description":"The angle expressed in degrees between the projection of the initial magnetization on x-y plane and the x-axis. For noncollinear calculations only."},"lforcet":{"type":"boolean","description":"When starting a non collinear calculation using an existing density file from a collinear lsda calculation assumes previous density points in z direction and rotates it in the direction described by angle1 and angle2 variables for atomic type 1"},"constrained_magnetization":{"type":"string","enum":["none","total","atomic","total direction","atomic direction"],"default":"none","description":"Used to perform constrained calculations in magnetic systems."},"fixed_magnetization":{"type":"array","items":{"type":"number","default":0},"maxItems":3,"minItems":3},"lambda":{"type":"number","default":1,"description":"parameter used for constrained_magnetization calculations N.B.: if the scf calculation does not converge, try to reduce lambda to obtain convergence, then restart the run with a larger lambda"},"report":{"type":"integer","default":-1,"description":"determines when atomic magnetic moments are printed on output"},"lspinorb":{"type":"boolean","description":"if .TRUE. the noncollinear code can use a pseudopotential with spin-orbit."},"assume_isolated":{"type":"string","enum":["none","makov-payne","m-p","mp","martyna-tuckerman","m-t","mt","esm","2D"],"default":"none","description":"Used to perform calculation assuming the system to be isolated (a molecule or a cluster in a 3D supercell)"},"esm_bc":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"esm_w":{"type":"number","default":0,"description":"If assume_isolated = 'esm', determines the position offset [in a.u.] of the start of the effective screening region, measured relative to the cell edge. (ESM region begins at z = +/- [L_z/2 + esm_w] )."},"esm_efield":{"type":"number","default":0,"description":"If assume_isolated = 'esm' and esm_bc = 'bc2', gives the magnitude of the electric field [Ry/a.u.] to be applied between semi-infinite ESM electrodes."},"esm_nfit":{"type":"integer","default":4,"description":"If assume_isolated = 'esm', gives the number of z-grid points for the polynomial fit along the cell edge."},"lgcscf":{"type":"boolean","default":false,"description":"If .TRUE. perform a constant bias potential (constant-mu) calculation with Grand-Canonical SCF."},"gcscf_mu":{"type":"number","description":"The target Fermi energy (eV) of GC-SCF. One can start with appropriate total charge of the system by giving tot_charge"},"gcscf_conv_thr":{"type":"number","default":0.01,"description":"Convergence threshold of Fermi energy (eV) for GC-SCF."},"gcscf_beta":{"type":"number","default":0.05,"description":"Mixing factor for GC-SCF. Larger values are recommended, if systems with small DOS on Fermi surface as graphite."},"vdw_corr":{"type":"string","enum":["none","grimme-d2","Grimme-D2","DFT-D","dft-d","grimme-d3","Grimme-D3","DFT-D3","dft-d3","TS","ts","ts-vdw","ts-vdW","tkatchenko-scheffler","MBD","mbd","many-body-dispersion","mbd_vdw","XDM","xdm"],"default":"none","description":"Type of Van der Waals correction"},"london":{"type":"boolean","default":false,"description":"OBSOLESCENT, same as vdw_corr='DFT-D'"},"london_s6":{"type":"number","default":0.75,"description":"global scaling parameter for DFT-D. Default is good for PBE."},"london_c6":{"type":"number","description":"atomic C6 coefficient of each atom type"},"london_rvdw":{"type":"number","description":"atomic vdw radii of each atom type"},"london_rcut":{"type":"number","default":200,"description":"cutoff radius (a.u.) for dispersion interactions"},"dftd3_version":{"type":"integer","default":3,"minimum":2,"maximum":6,"description":"Version of Grimme implementation of Grimme-D3"},"dftd3_threebody":{"type":"boolean","default":true,"description":"Turn three-body terms in Grimme-D3 on. If .false. two-body contributions only are computed, using two-body parameters of Grimme-D3. If dftd3_version=2, three-body contribution is always disabled."},"ts_vdw_econv_thr":{"type":"number","default":0.000001,"description":"Optional: controls the convergence of the vdW energy (and forces). The default value is a safe choice, likely too safe, but you do not gain much in increasing it"},"ts_vdw_isolated":{"type":"boolean","default":false,"description":"Optional: set it to .TRUE. when computing the Tkatchenko-Scheffler vdW energy or the Many-Body dispersion (MBD) energy for an isolated (non-periodic) system."},"xdm":{"type":"boolean","default":false,"description":"OBSOLESCENT, same as vdw_corr='xdm'"},"xdm_a1":{"type":"number","default":0.6836,"description":"Damping function parameter a1 (adimensional)"},"xdm_a2":{"type":"number","default":1.5045,"description":"Damping function parameter a2 (angstrom)"},"space_group":{"type":"integer","default":0,"description":"The number of the space group of the crystal, as given in the International Tables of Crystallography A (ITA)"},"uniqueb":{"type":"boolean","default":false,"description":"Used only for monoclinic lattices"},"origin_choice":{"type":"integer","default":1,"description":"Used only for space groups that in the ITA allow the use of two different origins"},"rhombohedral":{"type":"boolean","default":true,"description":"Used only for rhombohedral space groups."},"zgate":{"type":"number","default":0.5,"description":"used only if gate = .TRUE."},"relaxz":{"type":"boolean","default":false,"description":"used only if gate = .TRUE."},"block":{"type":"boolean","default":false,"description":"used only if gate = .TRUE."},"block_1":{"type":"number","default":0.45,"description":"used only if gate = .TRUE. and block = .TRUE."},"block_2":{"type":"number","default":0.55,"description":"used only if gate = .TRUE. and block = .TRUE."},"block_height":{"type":"number","default":0.1,"description":"used only if gate = .TRUE. and block = .TRUE."},"nextffield":{"type":"integer","default":0,"description":"Number of activated external ionic force fields."}},"required":["ibrav","nat","ntyp","ecutwfc"]},{"$id":"apse/file/applications/espresso/7.2/pw.x","$schema":"http://json-schema.org/draft-07/schema#","title":"pwx main schema","additionalProperties":false,"type":"object","properties":{"CONTROL":{"$schema":"http://json-schema.org/draft-07/schema#","title":"control schema","type":"object","additionalProperties":false,"properties":{"calculation":{"description":"A string describing the task to be performed","type":"string","enum":["scf","nscf","bands","relax","md","vc-relax","vc-md"],"default":"scf"},"title":{"description":"reprinted on output.","type":"string","default":""},"verbosity":{"description":"Currently two verbosity levels are implemented: high, low. 'debug' and 'medium' have the same effect as 'high'; 'default' and 'minimal' as 'low'","type":"string","enum":["high","low","debug","medium","minimal","default"],"default":"low"},"restart_mode":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"wf_collect":{"type":"boolean","description":"OBSOLETE - NO LONGER IMPLEMENTED"},"nstep":{"description":"Default: 1 if calculation == 'scf', 'nscf', 'bands'; 50 for the other cases; Number of molecular-dynamics or structural optimization steps performed in this run. If set to 0, the code performs a quick \"dry run\", stopping just after initialization. This is useful to check for input correctness and to have the summary printed. NOTE: in MD calculations, the code will perform \"nstep\" steps even if restarting from a previously interrupted calculation.","type":"number","default":1},"iprint":{"description":"band energies are written every iprint iterations","type":"number"},"tstress":{"type":"boolean","default":false,"description":"calculate stress. It is set to .TRUE. automatically if calculation == 'vc-md' or 'vc-relax'"},"tprnfor":{"type":"boolean","description":"calculate forces. It is set to .TRUE. automatically if calculation == 'relax','md','vc-md'"},"dt":{"type":"number","description":"time step for molecular dynamics, in Rydberg atomic units (1 a.u.=4.8378 * 10^-17 s : beware, the CP code uses Hartree atomic units, half that much!!!)","default":20},"outdir":{"type":"string","description":"input, temporary, output files are found in this directory, see also wfcdir"},"wfcdir":{"type":"string","description":"This directory specifies where to store files generated by each processor (*.wfc{N}, *.igk{N}, etc.). Useful for machines without a parallel file system: set wfcdir to a local file system, while outdir should be a parallel or network file system, visible to all processors. Beware: in order to restart from interrupted runs, or to perform further calculations using the produced data files, you may need to copy files to outdir. Works only for pw.x."},"prefix":{"type":"string","description":"prepended to input/output filenames: prefix.wfc, prefix.rho, etc.","default":"pwscf"},"lkpoint_dir":{"type":"boolean","description":"OBSOLETE - NO LONGER IMPLEMENTED"},"max_seconds":{"type":"number","default":10000000,"description":"Jobs stops after max_seconds CPU time. Use this option in conjunction with option restart_mode if you need to split a job too long to complete into shorter jobs that fit into your batch queues."},"etot_conv_thr":{"type":"number","default":0.0001,"description":"Convergence threshold on total energy (a.u) for ionic minimization: the convergence criterion is satisfied when the total energy changes less than etot_conv_thr between two consecutive scf steps. Note that etot_conv_thr is extensive, like the total energy. See also forc_conv_thr - both criteria must be satisfied"},"forc_conv_thr":{"type":"number","default":0.001,"description":"Convergence threshold on forces (a.u) for ionic minimization: the convergence criterion is satisfied when all components of all forces are smaller than forc_conv_thr. See also etot_conv_thr - both criteria must be satisfied"},"disk_io":{"type":"string","enum":["high","medium","low","nowf","none"],"description":"Specifies the amount of disk I/O activity: (only for binary files and xml data file in data directory; other files printed at each molecular dynamics / structural optimization step are not controlled by this option )"},"pseudo_dir":{"type":"string","description":"directory containing pseudopotential files. Default: value of the $ESPRESSO_PSEUDO environment variable if set; '$HOME/espresso/pseudo/' otherwise"},"tefield":{"type":"boolean","default":false,"description":"If .TRUE. a saw-like potential simulating an electric field is added to the bare ionic potential. See variables edir, eamp, emaxpos, eopreg for the form and size of the added potential."},"dipfield":{"type":"boolean","default":false,"description":"If .TRUE. and tefield==.TRUE. a dipole correction is also added to the bare ionic potential - implements the recipe of L. Bengtsson, PRB 59, 12301 (1999). See variables edir, emaxpos, eopreg for the form of the correction. Must be used ONLY in a slab geometry, for surface calculations, with the discontinuity FALLING IN THE EMPTY SPACE."},"lelfield":{"type":"boolean","default":false,"description":"If .TRUE. a homogeneous finite electric field described through the modern theory of the polarization is applied. This is different from tefield == .true. !"},"nberrycyc":{"type":"integer","default":1,"description":"In the case of a finite electric field ( lelfield == .TRUE. ) it defines the number of iterations for converging the wavefunctions in the electric field Hamiltonian, for each external iteration on the charge density"},"lorbm":{"type":"boolean","default":false,"description":"If .TRUE. perform orbital magnetization calculation."},"lberry":{"type":"boolean","default":false,"description":"If .TRUE. perform a Berry phase calculation. See the header of PW/src/bp_c_phase.f90 for documentation"},"gdir":{"type":"number","description":"For Berry phase calculation: direction of the k-point strings in reciprocal space. Allowed values: 1, 2, 3 1=first, 2=second, 3=third reciprocal lattice vector For calculations with finite electric fields (lelfield==.true.) \"gdir\" is the direction of the field."},"nppstr":{"type":"number","description":"For Berry phase calculation: number of k-points to be calculated along each symmetry-reduced string. The same for calculation with finite electric fields (lelfield==.true.)."},"gate":{"type":"boolean","default":false,"description":"In the case of charged cells (tot_charge .ne. 0) setting gate = .TRUE. represents the counter charge (i.e. -tot_charge) not by a homogeneous background charge but with a charged plate, which is placed at zgate (see below). Details of the gate potential can be found in T. Brumme, M. Calandra, F. Mauri; PRB 89, 245406 (2014). Note, that in systems which are not symmetric with respect to the plate, one needs to enable the dipole correction! (dipfield=.true.). Currently, symmetry can be used with gate=.true. but carefully check that no symmetry is included which maps z to -z even if in principle one could still use them for symmetric systems (i.e. no dipole correction). For nosym=.false. verbosity is set to 'high'. Note: this option was called \"monopole\" in v6.0 and 6.1 of pw.x"},"twochem":{"type":"boolean","default":false,"description":"IF .TRUE. , a two chemical potential calculation for the simulation of photoexcited systems is performed, constraining a fraction of the electrons in the conduction manifold."},"lfcp":{"type":"boolean","default":false,"description":"If .TRUE. perform a constant bias potential (constant-mu) calculation for a system with ESM method. See the header of PW/src/fcp_module.f90 for documentation. To perform the calculation, you must set a namelist FCP."},"trism":{"type":"boolean","default":false,"description":"If .TRUE. perform a 3D-RISM-SCF calculation [for details see H.Sato et al., JCP 112, 9463 (2000), doi:10.1063/1.481564]. The solvent's distributions are calculated by 3D-RISM, though solute is treated as SCF. The charge density and the atomic positions are optimized, simultaneously with the solvents. To perform the calculation, you must set a namelist RISM and a card SOLVENTS. If assume_isolated = 'esm' and esm_bc = 'bc1', Laue-RISM is calculated instead of 3D-RISM and coupled with ESM method (i.e. ESM-RISM). [for details see S.Nishihara and M.Otani, PRB 96, 115429 (2017)]. The default of mixing_beta is 0.2 for both 3D-RISM and Laue-RISM. For structural relaxation with BFGS, ignore_wolfe is always .TRUE. ."}}},"SYSTEM":{"$schema":"http://json-schema.org/draft-07/schema#","title":"system schema","type":"object","additionalProperties":false,"anyOf":[{"properties":{"celldm":{"type":"array","items":{"type":"number"},"minItems":6,"maxItems":6}}},{"properties":{"A":{"type":"number"},"B":{"type":"number"},"C":{"type":"number"},"cosAB":{"type":"number"},"cosAC":{"type":"number"},"cosBC":{"type":"number"}}}],"properties":{"ibrav":{"type":"integer"},"nat":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"ntyp":{"type":"integer","description":"number of types of atoms in the unit cell"},"nbnd":{"type":"integer","description":"Default: for an insulator, nbnd = number of valence bands (nbnd = # of electrons /2); for a metal, 20% more (minimum 4 more)"},"nbnd_cond":{"type":"integer","description":"Default: nbnd_cond = nbnd - # of electrons / 2 in the collinear case; nbnd_cond = nbnd - # of electrons in the noncollinear case."},"tot_charge":{"type":"number","default":0},"starting_charge":{"type":"number","default":0,"description":"starting charge on atomic type 'i', to create starting potential with startingpot = 'atomic'."},"tot_magnetization":{"type":"number","default":-10000,"description":"Total majority spin charge - minority spin charge. Used to impose a specific total electronic magnetization. If unspecified then tot_magnetization variable is ignored and the amount of electronic magnetization is determined during the self-consistent cycle."},"starting_magnetization":{"type":"array","items":{"type":"number","default":0,"minimum":-1,"maximum":1}},"ecutwfc":{"type":"number","description":"kinetic energy cutoff (Ry) for wavefunctions"},"ecutrho":{"type":"number","description":"Kinetic energy cutoff (Ry) for charge density and potential For norm-conserving pseudopotential you should stick to the default value, you can reduce it by a little but it will introduce noise especially on forces and stress. Default: 4 * ecutwfc"},"ecutfock":{"type":"number","description":"Kinetic energy cutoff (Ry) for the exact exchange operator in EXX type calculations. By default this is the same as ecutrho but in some EXX calculations, a significant speed-up can be obtained by reducing ecutfock, at the expense of some loss in accuracy. Must be .gt. ecutwfc. Not implemented for stress calculation and for US-PP and PAW pseudopotentials."},"nr1":{"type":"integer","description":"Three-dimensional FFT mesh (hard grid) for charge density (and scf potential). If not specified the grid is calculated based on the cutoff for charge density (see also ecutrho)"},"nr2":{"type":"integer","description":"Three-dimensional FFT mesh (hard grid) for charge density (and scf potential). If not specified the grid is calculated based on the cutoff for charge density (see also ecutrho)"},"nr3":{"type":"integer","description":"Three-dimensional FFT mesh (hard grid) for charge density (and scf potential). If not specified the grid is calculated based on the cutoff for charge density (see also ecutrho)"},"nr1s":{"type":"integer","description":"Three-dimensional mesh for wavefunction FFT and for the smooth part of charge density ( smooth grid ). Coincides with nr1, nr2, nr3 if ecutrho = 4 * ecutwfc ( default )"},"nr2s":{"type":"integer","description":"Three-dimensional mesh for wavefunction FFT and for the smooth part of charge density ( smooth grid ). Coincides with nr1, nr2, nr3 if ecutrho = 4 * ecutwfc ( default )"},"nr3s":{"type":"integer","description":"Three-dimensional mesh for wavefunction FFT and for the smooth part of charge density ( smooth grid ). Coincides with nr1, nr2, nr3 if ecutrho = 4 * ecutwfc ( default )"},"nosym":{"type":"boolean","default":false},"nosym_evc":{"type":"boolean","default":false},"noinv":{"type":"boolean","default":false,"description":"if (.TRUE.) disable the usage of k => -k symmetry (time reversal) in k-point generation"},"no_t_rev":{"type":"boolean","default":false,"description":"if (.TRUE.) disable the usage of magnetic symmetry operations that consist in a rotation + time reversal."},"force_symmorphic":{"type":"boolean","default":false,"description":"if (.TRUE.) force the symmetry group to be symmorphic by disabling symmetry operations having an associated fractionary translation"},"use_all_frac":{"type":"boolean","default":false},"occupations":{"type":"string","enum":["smearing","tetrahedra","tetrahedra_lin","tetrahedra_opt","fixed","from_input"]},"one_atom_occupations":{"type":"boolean","default":false},"starting_spin_angle":{"type":"boolean","default":false},"degauss_cond":{"type":"number","default":0,"description":"value of the gaussian spreading (Ry) for brillouin-zone integration in the conduction manifold in a two-chemical potential calculation (twochem=.true.)."},"nelec_cond":{"type":"number","default":0,"description":"Number of electrons placed in the conduction manifold in a two-chemical potential calculation (twochem=.true.). Of the total # of electrons nelec, nelec-nelec_cond will occupy the valence manifold and nelec_cond will be constrained in the conduction manifold."},"degauss":{"type":"number","default":0,"description":"value of the gaussian spreading (Ry) for brillouin-zone integration in metals."},"smearing":{"type":"string","enum":["gaussian","gauss","methfessel-paxton","m-p","mp","marzari-vanderbilt","cold","m-v","mv","fermi-dirac","f-d","fd"],"default":"gaussian"},"nspin":{"type":"integer","default":1},"sic_gamma":{"type":"number","default":0,"description":"Strength of the gammaDFT potential."},"pol_type":{"type":"string","enum":["e","h"],"description":"Type of polaron in gammaDFT."},"sic_energy":{"type":"boolean","default":false,"description":"Enable the calculation of the total energy in gammaDFT. When .true., a preliminary calculation is performed to calculate the electron density in the absence of the polaron. When .false., the total energy printed in output should not be considered. For structural relaxations, it is recommended to use .false. to avoid doubling the computational cost."},"sci_vb":{"type":"number","default":0,"description":"Valence band shift (in eV) through self-consistent scissor operator. When performing gammaDFT calculations of polarons, the polaron level is not shifted."},"sci_cb":{"type":"number","default":0,"description":"Conduction band band shift (in eV) through self-consistent scissor operator. When performing gammaDFT calculations of polarons, the polaron level is not shifted."},"noncolin":{"type":"boolean","default":false,"description":"if .true. the program will perform a noncollinear calculation."},"ecfixed":{"type":"number","default":0},"qcutz":{"type":"number","default":0},"q2sigma":{"type":"number","default":0.1},"input_dft":{"type":"string","description":"Exchange-correlation functional: eg 'PBE', 'BLYP' etc See Modules/funct.f90 for allowed values. Overrides the value read from pseudopotential files. Use with care and if you know what you are doing!"},"ace":{"type":"boolean","default":true,"description":"Use Adaptively Compressed Exchange operator as in Lin Lin, J. Chem. Theory Comput. 2016, 12, 2242--2249, doi:10.1021/acs.jctc.6b00092"},"exx_fraction":{"type":"number","description":"Fraction of EXX for hybrid functional calculations. In the case of input_dft='PBE0', the default value is 0.25, while for input_dft='B3LYP' the exx_fraction default value is 0.20."},"screening_parameter":{"type":"number","default":0.106,"description":"screening_parameter for HSE like hybrid functionals."},"exxdiv_treatment":{"type":"string","default":"gygi-baldereschi","enum":["gygi-baldereschi","vcut_spherical","vcut_ws","none"]},"x_gamma_extrapolation":{"type":"boolean","default":true,"description":"Specific for EXX. If .true., extrapolate the G=0 term of the potential"},"ecutvcut":{"type":"number","description":"Reciprocal space cutoff for correcting Coulomb potential divergencies at small q vectors."},"nqx1":{"type":"integer","default":0,"description":"Three-dimensional mesh for q (k1-k2) sampling of the Fock operator (EXX). Can be smaller than the number of k-points."},"nqx2":{"type":"integer","description":"Three-dimensional mesh for q (k1-k2) sampling of the Fock operator (EXX). Can be smaller than the number of k-points."},"nqx3":{"type":"integer","description":"Three-dimensional mesh for q (k1-k2) sampling of the Fock operator (EXX). Can be smaller than the number of k-points."},"localization_thr":{"type":"number","default":0,"description":"Overlap threshold over which the exchange integral over a pair of localized orbitals is included in the evaluation of EXX operator. Any value greater than 0.0 triggers the SCDM localization and the evaluation on EXX using the localized orbitals. Very small value of the threshold should yield the same result as the default EXX evaluation"},"Hubbard_occ":{"type":"array","items":{"type":"array","items":[{"type":"integer","minimum":1},{"type":"integer","minimum":1,"maximum":3},{"type":"number"}],"minItems":3,"maxItems":3}},"Hubbard_alpha":{"type":"array","items":{"type":"number","default":0}},"Hubbard_beta":{"type":"array","items":{"type":"number","default":0}},"starting_ns_eigenvalue":{"type":"array","items":{"type":"array","items":{"type":"array","items":{"type":"number"}}}},"dmft":{"type":"boolean","default":false,"description":"If true, nscf calculation will exit in restart mode, scf calculation will restart from there if DMFT updates are provided as hdf5 archive. Scf calculation should be used only with electron_maxstep = 1."},"dmft_prefix":{"type":"string","description":"prepended to hdf5 archive: dmft_prefix.h5"},"ensemble_energies":{"type":"boolean","default":false,"description":"If ensemble_energies = .true., an ensemble of xc energies is calculated non-selfconsistently for perturbed exchange-enhancement factors and LDA vs. PBE correlation ratios after each converged electronic ground state calculation."},"edir":{"type":"integer","description":"The direction of the electric field or dipole correction is parallel to the bg(:,edir) reciprocal lattice vector, so the potential is constant in planes defined by FFT grid points; edir = 1, 2 or 3. Used only if tefield is .TRUE."},"emaxpos":{"type":"number","default":0.5,"description":"Position of the maximum of the saw-like potential along crystal axis edir, within the unit cell (see below), 0 < emaxpos < 1 Used only if tefield is .TRUE."},"eopreg":{"type":"number","default":0.1,"description":"Zone in the unit cell where the saw-like potential decreases. ( see below, 0 < eopreg < 1 ). Used only if tefield is .TRUE."},"eamp":{"type":"number","default":0.001},"angle1":{"type":"array","items":{"type":"number"},"maxItems":1,"minItems":1,"description":"The angle expressed in degrees between the initial magnetization and the z-axis. For noncollinear calculations only; index i runs over the atom types."},"angle2":{"type":"array","items":{"type":"number"},"maxItems":1,"minItems":1,"description":"The angle expressed in degrees between the projection of the initial magnetization on x-y plane and the x-axis. For noncollinear calculations only."},"lforcet":{"type":"boolean","description":"When starting a non collinear calculation using an existing density file from a collinear lsda calculation assumes previous density points in z direction and rotates it in the direction described by angle1 and angle2 variables for atomic type 1"},"constrained_magnetization":{"type":"string","enum":["none","total","atomic","total direction","atomic direction"],"default":"none","description":"Used to perform constrained calculations in magnetic systems."},"fixed_magnetization":{"type":"array","items":{"type":"number","default":0},"maxItems":3,"minItems":3},"lambda":{"type":"number","default":1,"description":"parameter used for constrained_magnetization calculations N.B.: if the scf calculation does not converge, try to reduce lambda to obtain convergence, then restart the run with a larger lambda"},"report":{"type":"integer","default":-1,"description":"determines when atomic magnetic moments are printed on output"},"lspinorb":{"type":"boolean","description":"if .TRUE. the noncollinear code can use a pseudopotential with spin-orbit."},"assume_isolated":{"type":"string","enum":["none","makov-payne","m-p","mp","martyna-tuckerman","m-t","mt","esm","2D"],"default":"none","description":"Used to perform calculation assuming the system to be isolated (a molecule or a cluster in a 3D supercell)"},"esm_bc":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"esm_w":{"type":"number","default":0,"description":"If assume_isolated = 'esm', determines the position offset [in a.u.] of the start of the effective screening region, measured relative to the cell edge. (ESM region begins at z = +/- [L_z/2 + esm_w] )."},"esm_efield":{"type":"number","default":0,"description":"If assume_isolated = 'esm' and esm_bc = 'bc2', gives the magnitude of the electric field [Ry/a.u.] to be applied between semi-infinite ESM electrodes."},"esm_nfit":{"type":"integer","default":4,"description":"If assume_isolated = 'esm', gives the number of z-grid points for the polynomial fit along the cell edge."},"lgcscf":{"type":"boolean","default":false,"description":"If .TRUE. perform a constant bias potential (constant-mu) calculation with Grand-Canonical SCF."},"gcscf_mu":{"type":"number","description":"The target Fermi energy (eV) of GC-SCF. One can start with appropriate total charge of the system by giving tot_charge"},"gcscf_conv_thr":{"type":"number","default":0.01,"description":"Convergence threshold of Fermi energy (eV) for GC-SCF."},"gcscf_beta":{"type":"number","default":0.05,"description":"Mixing factor for GC-SCF. Larger values are recommended, if systems with small DOS on Fermi surface as graphite."},"vdw_corr":{"type":"string","enum":["none","grimme-d2","Grimme-D2","DFT-D","dft-d","grimme-d3","Grimme-D3","DFT-D3","dft-d3","TS","ts","ts-vdw","ts-vdW","tkatchenko-scheffler","MBD","mbd","many-body-dispersion","mbd_vdw","XDM","xdm"],"default":"none","description":"Type of Van der Waals correction"},"london":{"type":"boolean","default":false,"description":"OBSOLESCENT, same as vdw_corr='DFT-D'"},"london_s6":{"type":"number","default":0.75,"description":"global scaling parameter for DFT-D. Default is good for PBE."},"london_c6":{"type":"number","description":"atomic C6 coefficient of each atom type"},"london_rvdw":{"type":"number","description":"atomic vdw radii of each atom type"},"london_rcut":{"type":"number","default":200,"description":"cutoff radius (a.u.) for dispersion interactions"},"dftd3_version":{"type":"integer","default":3,"minimum":2,"maximum":6,"description":"Version of Grimme implementation of Grimme-D3"},"dftd3_threebody":{"type":"boolean","default":true,"description":"Turn three-body terms in Grimme-D3 on. If .false. two-body contributions only are computed, using two-body parameters of Grimme-D3. If dftd3_version=2, three-body contribution is always disabled."},"ts_vdw_econv_thr":{"type":"number","default":0.000001,"description":"Optional: controls the convergence of the vdW energy (and forces). The default value is a safe choice, likely too safe, but you do not gain much in increasing it"},"ts_vdw_isolated":{"type":"boolean","default":false,"description":"Optional: set it to .TRUE. when computing the Tkatchenko-Scheffler vdW energy or the Many-Body dispersion (MBD) energy for an isolated (non-periodic) system."},"xdm":{"type":"boolean","default":false,"description":"OBSOLESCENT, same as vdw_corr='xdm'"},"xdm_a1":{"type":"number","default":0.6836,"description":"Damping function parameter a1 (adimensional)"},"xdm_a2":{"type":"number","default":1.5045,"description":"Damping function parameter a2 (angstrom)"},"space_group":{"type":"integer","default":0,"description":"The number of the space group of the crystal, as given in the International Tables of Crystallography A (ITA)"},"uniqueb":{"type":"boolean","default":false,"description":"Used only for monoclinic lattices"},"origin_choice":{"type":"integer","default":1,"description":"Used only for space groups that in the ITA allow the use of two different origins"},"rhombohedral":{"type":"boolean","default":true,"description":"Used only for rhombohedral space groups."},"zgate":{"type":"number","default":0.5,"description":"used only if gate = .TRUE."},"relaxz":{"type":"boolean","default":false,"description":"used only if gate = .TRUE."},"block":{"type":"boolean","default":false,"description":"used only if gate = .TRUE."},"block_1":{"type":"number","default":0.45,"description":"used only if gate = .TRUE. and block = .TRUE."},"block_2":{"type":"number","default":0.55,"description":"used only if gate = .TRUE. and block = .TRUE."},"block_height":{"type":"number","default":0.1,"description":"used only if gate = .TRUE. and block = .TRUE."},"nextffield":{"type":"integer","default":0,"description":"Number of activated external ionic force fields."}},"required":["ibrav","nat","ntyp","ecutwfc"]},"ELECTRONS":{"$schema":"http://json-schema.org/draft-07/schema#","title":"electrons schema","type":"object","additionalProperties":false,"properties":{"electron_maxstep":{"type":"integer","default":100,"description":"maximum number of iterations in a scf step. If exact exchange is active, this will affect the inner loops."},"exx_maxstep":{"type":"integer","default":100,"description":"maximum number of outer iterations in a scf calculation with exact exchange."},"scf_must_converge":{"type":"boolean","default":true,"description":"If .false. do not stop molecular dynamics or ionic relaxation when electron_maxstep is reached. Use with care."},"conv_thr":{"type":"number"},"adaptive_thr":{"type":"boolean","default":false,"description":"If .TRUE. this turns on the use of an adaptive conv_thr for the inner scf loops when using EXX."},"conv_thr_init":{"type":"number","description":"When adaptive_thr = .TRUE. this is the convergence threshold used for the first scf cycle."},"conv_thr_multi":{"type":"number","description":"When adaptive_thr = .TRUE. the convergence threshold for each scf cycle is given by: max( conv_thr, conv_thr_multi * dexx )"},"mixing_mode":{"type":"string","enum":["plain","TF","local-TF"],"default":"plain"},"mixing_beta":{"type":"number","description":"mixing factor for self-consistency"},"mixing_ndim":{"type":"integer","default":8,"description":"number of iterations used in mixing scheme"},"mixing_fixed_ns":{"type":"integer","default":0,"description":"For DFT+U : number of iterations with fixed ns ( ns is the atomic density appearing in the Hubbard term )."},"diagonalization":{"type":"string","enum":["david","cg","ppcg","paro","ParO","rmm-davidson","rmm-paro"],"default":"david"},"diago_thr_init":{"type":"number","description":"Convergence threshold (ethr) for iterative diagonalization (the check is on eigenvalue convergence)."},"diago_cg_maxiter":{"type":"integer","description":"For conjugate gradient diagonalization: max number of iterations"},"diago_ppcg_maxiter":{"type":"integer","description":"For ppcg diagonalization: max number of iterations"},"diago_david_ndim":{"type":"integer","default":2,"description":"For Davidson diagonalization: dimension of workspace (number of wavefunction packets, at least 2 needed)."},"diago_rmm_ndim":{"type":"integer","default":4,"description":"For RMM-DIIS diagonalization: dimension of workspace (number of wavefunction packets, at least 2 needed)."},"diago_rmm_conv":{"type":"boolean","default":false,"description":"If .TRUE., RMM-DIIS is performed up to converge. If .FALSE., RMM-DIIS is performed only once."},"diago_gs_nblock":{"type":"integer","default":16,"description":"For RMM-DIIS diagonalization: blocking size of Gram-Schmidt orthogonalization"},"diago_full_acc":{"type":"boolean","default":false,"description":"If .TRUE. all the empty states are diagonalized at the same level of accuracy of the occupied ones. Otherwise the empty states are diagonalized using a larger threshold (this should not affect total energy, forces, and other ground-state properties)."},"efield":{"type":"number","description":"Amplitude of the finite electric field (in Ry a.u.; 1 a.u. = 36.3609*10^10 V/m). Used only if lelfield==.TRUE. and if k-points (K_POINTS card) are not automatic."},"efield_cart":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"efield_phase":{"type":"string","enum":["read","write","none"],"default":"none"},"startingpot":{"type":"string","enum":["atomic","file"]},"startingwfc":{"type":"string","enum":["atomic","atomic+random","random","file"],"default":"atomic+random"},"tqr":{"type":"boolean","default":false,"description":"If .true., use a real-space algorithm for augmentation charges of ultrasoft pseudopotentials and PAWsets. Faster but numerically less accurate than the default G-space algorithm. Use with care and after testing!"},"real_space":{"type":"boolean","default":false,"description":"If .true., exploit real-space localization to compute matrix elements for nonlocal projectors. Faster and in principle better scaling than the default G-space algorithm, but numerically less accurate, may lead to some loss of translational invariance. Use with care and after testing!"}}},"IONS":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"ions schema","type":"object","additionalProperties":false,"oneOf":[{"type":"object","additionalProperties":false,"properties":{"ion_dynamics":{"type":"string","enum":["bfgs","damp","fire"],"default":"bfgs","description":"CASE: calculation == 'relax'"}}},{"type":"object","additionalProperties":false,"properties":{"ion_dynamics":{"type":"string","enum":["verlet","langevin","langevin-smc"],"default":"verlet","description":"CASE: calculation == 'md'"}}},{"type":"object","additionalProperties":false,"properties":{"ion_dynamics":{"type":"string","enum":["bfgs","damp"],"default":"bfgs","description":"CASE: calculation == 'vc-relax'"}}},{"type":"object","additionalProperties":false,"properties":{"ion_dynamics":{"type":"string","enum":["beeman"],"default":"beeman","description":"CASE: calculation == 'vc-md'"}}}],"properties":{"ion_positions":{"type":"string","enum":["default","from_input"],"default":"default"},"ion_velocities":{"type":"string","enum":["default","from_input"],"default":"default"},"pot_extrapolation":{"type":"string","enum":["none","atomic","first_order","second_order"],"default":"atomic","description":"Used to extrapolate the potential from preceding ionic steps."},"wfc_extrapolation":{"type":"string","enum":["none","first_order","second_order"],"default":"none","description":"Used to extrapolate the wavefunctions from preceding ionic steps."},"remove_rigid_rot":{"type":"boolean","default":false,"description":"This keyword is useful when simulating the dynamics and/or the thermodynamics of an isolated system. If set to true the total torque of the internal forces is set to zero by adding new forces that compensate the spurious interaction with the periodic images. This allows for the use of smaller supercells."},"ion_temperature":{"type":"string","enum":["rescaling","rescale-v","rescale-T","reduce-T","berendsen","andersen","svr","initial","not_controlled"],"default":"not_controlled"},"tempw":{"type":"number","description":"Starting temperature (Kelvin) in MD runs target temperature for most thermostats.","default":300},"tolp":{"type":"number","description":"Tolerance for velocity rescaling. Velocities are rescaled if the run-averaged and target temperature differ more than tolp.","default":100},"delta_t":{"type":"number","default":1},"nraise":{"type":"integer","default":1},"refold_pos":{"type":"boolean","default":false,"description":"This keyword applies only in the case of molecular dynamics or damped dynamics. If true the ions are refolded at each step into the supercell."},"upscale":{"type":"number","description":"Max reduction factor for conv_thr during structural optimization conv_thr is automatically reduced when the relaxation approaches convergence so that forces are still accurate, but conv_thr will not be reduced to less that conv_thr / upscale.","default":100},"bfgs_ndim":{"type":"integer","default":1,"description":"Number of old forces and displacements vectors used in the PULAY mixing of the residual vectors obtained on the basis of the inverse hessian matrix given by the BFGS algorithm."},"trust_radius_max":{"type":"number","description":"Maximum ionic displacement in the structural relaxation. (bfgs only)","default":0.8},"trust_radius_min":{"type":"number","description":"Minimum ionic displacement in the structural relaxation BFGS is reset when trust_radius < trust_radius_min. (bfgs only)","default":0.001},"trust_radius_ini":{"type":"number","description":"Initial ionic displacement in the structural relaxation. (bfgs only)","default":0.5},"w_1":{"type":"number","default":0.01},"w_2":{"type":"number","description":"Parameters used in line search based on the Wolfe conditions. (bfgs only)","default":0.5},"fire_alpha_init":{"type":"number","description":"Initial value of the alpha mixing factor in the FIRE minimization scheme; recommended values are between 0.1 and 0.3","default":0.2},"fire_falpha":{"type":"number","description":"Scaling of the alpha mixing parameter for steps with P > 0;","default":0.99},"fire_nmin":{"type":"integer","default":5,"description":"Minimum number of steps with P > 0 before increase of dt"},"fire_f_inc":{"type":"number","description":"Factor for increasing dt","default":1.1},"fire_f_dec":{"type":"number","description":"Factor for decreasing dt","default":0.5},"fire_dtmax":{"type":"number","description":"Determines the maximum value of dt in the FIRE minimization; dtmax = fire_dtmax*dt","default":10}}},{"type":"null"}]},"CELL":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"cell schema","type":"object","additionalProperties":false,"oneOf":[{"type":"object","additionalProperties":false,"properties":{"cell_dynamics":{"type":"string","enum":["none","sd","damp-pr","damp-w","bfgs"],"default":"bfgs","description":"CASE ( calculation == 'vc-relax' )"}}},{"type":"object","additionalProperties":false,"properties":{"cell_dynamics":{"type":"string","enum":["none","pr","w"],"description":"CASE ( calculation == 'vc-md' )"}}}],"properties":{"press":{"type":"number","description":"Target pressure [KBar] in a variable-cell md or relaxation run.","default":0},"wmass":{"type":"number","description":"Fictitious cell mass [amu] for variable-cell simulations (both 'vc-md' and 'vc-relax'). Default: 0.75*Tot_Mass/pi**2 for Parrinello-Rahman MD; 0.75*Tot_Mass/pi**2/Omega**(2/3) for Wentzcovitch MD"},"cell_factor":{"type":"number","description":"Used in the construction of the pseudopotential tables. It should exceed the maximum linear contraction of the cell during a simulation. Default: 2.0 for variable-cell calculations, 1.0 otherwise"},"press_conv_thr":{"type":"number","default":0.5,"description":"Convergence threshold on the pressure for variable cell relaxation ('vc-relax' : note that the other convergence thresholds for ionic relaxation apply as well)."},"cell_dofree":{"type":"string","enum":["all","ibrav","a","b","c","fixa","fixb","fixc","x","y","xy","xz","xyz","shape","volume","2Dxy","2Dshape","epitaxial_ab","epitaxial_ac","epitaxial_bc"],"default":"all","description":"Select which of the cell parameters should be moved"}}},{"type":"null"}]},"ATOMIC_SPECIES":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic species schema","type":"object","additionalProperties":false,"properties":{"values":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}}}},"ATOMIC_POSITIONS":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic positions schema","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1493","type":"object","additionalProperties":false,"properties":{"card_option":{"type":"string","enum":["alat","bohr","angstrom","crystal","crystal_sg"],"default":"alat"},"values":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}}},"K_POINTS":{"$schema":"http://json-schema.org/draft-07/schema#","title":"k points schema","type":"object","additionalProperties":false,"properties":{"card_option":{"type":"string","enum":["tpiba","automatic","crystal","gamma","tpiba_b","crystal_b","tpiba_c","crystal_c"]},"values":{"oneOf":[{"type":"array","description":"K_POINTS tpiba | crystal | tpiba_b | crystal_b | tpiba_c | crystal_c","items":{"type":"object","additionalProperties":false,"properties":{"nks":{"type":"integer","description":"Number of supplied special k-points."},"xk_x":{"type":"number"},"xk_y":{"type":"number"},"xk_z":{"type":"number"},"wk":{"type":"number"}}}},{"type":"object","description":"K_POINTS automatic","additionalProperties":false,"properties":{"nk1":{"type":"integer","description":"Number of supplied special k-points."},"nk2":{"type":"integer","description":"Number of supplied special k-points."},"nk3":{"type":"integer","description":"Number of supplied special k-points."},"sk1":{"type":"integer","description":"Number of supplied special k-points."},"sk2":{"type":"integer","description":"Number of supplied special k-points."},"sk3":{"type":"integer","description":"Number of supplied special k-points."}}},{"type":"null","description":"K_POINTS gamma"}]}}},"CELL_PARAMETERS":{"$schema":"http://json-schema.org/draft-07/schema#","title":"cell parameters schema","type":"object","additionalProperties":false,"properties":{"card_option":{"type":"string","enum":["alat","bohr","angstrom"],"description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"values":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},"HUBBARD":{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard schema","type":"object","additionalProperties":false,"properties":{"card_option":{"type":"string","enum":["atomic","ortho-atomic","norm-atomic","wf","pseudo"]},"values":{"oneOf":[{"description":"IF DFT+U","type":"array","items":{"oneOf":[{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1764","additionalProperties":false,"properties":{"U":{"type":"string","enum":["U"],"description":"string constant \"U\"; indicates the specs for the U parameter will be given"},"label":{"type":"string","description":"label of the atom (as defined in ATOMIC_SPECIES)"},"manifold":{"type":"string","description":"specs of the manifold (e.g., 3d, 2p...)"},"u_val":{"type":"number","description":"value of the U parameter (in eV)"}}},{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1784","additionalProperties":false,"properties":{"J0":{"type":"string","enum":["J0"],"description":"string constant \"J0\"; indicates the specs for the J0 parameter will be given"},"label":{"type":"string","description":"label of the atom (as defined in ATOMIC_SPECIES)"},"manifold":{"type":"string","description":"specs of the manifold (e.g., 3d, 2p...)"},"j0_val":{"type":"number","description":"value of the J0 parameter (in eV)"}}}]}},{"description":"IF DFT+U+J","type":"array","items":{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1817","additionalProperties":false,"properties":{"paramType":{"type":"string","enum":["U","J","B","E2","E3"],"description":"character describing the type of Hubbard parameter allowed values: U, J and either B (for d-orbitals) or E2 and E3 (for f-orbitals)"},"label":{"type":"string","description":"label of the atom (as defined in ATOMIC_SPECIES)"},"manifold":{"type":"string","description":"specs of the manifold (e.g., 3d, 2p...)"},"paramValue":{"type":"number","description":"value of the J0 parameter (in eV)"}}}},{"description":"IF DFT+U+V","type":"array","items":{"oneOf":[{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1847","additionalProperties":false,"properties":{"U":{"type":"string","enum":["U"],"description":"string constant \"U\"; indicates the specs for the U parameter will be given"},"label":{"type":"string","description":"label of the atom (as defined in ATOMIC_SPECIES)"},"manifold":{"type":"string","description":"specs of the manifold (e.g., 3d, 2p...)"},"u_val":{"type":"number","description":"value of the U parameter (in eV)"}}},{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1865","additionalProperties":false,"properties":{"J0":{"type":"string","enum":["J0"],"description":"string constant \"J0\"; indicates the specs for the J0 parameter will be given"},"label":{"type":"string","description":"label of the atom (as defined in ATOMIC_SPECIES)"},"manifold":{"type":"string","description":"specs of the manifold (e.g., 3d, 2p...)"},"j0_val":{"type":"number","description":"value of the J0 parameter (in eV)"}}},{"type":"object","description":"https://www.quantum-espresso.org/Doc/INPUT_PW.html#idm1884","additionalProperties":false,"properties":{"V":{"type":"string","enum":["V"],"description":"string constant \"V\"; indicates the specs for the V parameter will be given"},"label(I)":{"type":"string","description":"label of the atom I (as defined in ATOMIC_SPECIES)"},"manifold(I)":{"type":"string","description":"specs of the manifold for atom I (e.g., 3d, 2p...)"},"label(J)":{"type":"string","description":"label of the atom J (as defined in ATOMIC_SPECIES)"},"manifold(J)":{"type":"string","description":"specs of the manifold for atom J (e.g., 3d, 2p...)"},"I":{"type":"integer","description":"index of the atom I"},"J":{"type":"integer","description":"index of the atom J"},"v_val(I,J)":{"type":"number","description":"value of the V parameter for the atom pair I,J (in eV)"}}}]}}]}}}}},{"$id":"apse/materials/builders/slab/pymatgen/parameters","$schema":"http://json-schema.org/draft-07/schema#","title":"Pymatgen Slab Generator Parameters Schema","description":"Parameters for the Pymatgen slab generator. https://github.com/materialsproject/pymatgen/blob/585bb673c4aa222669c4b0d72ffeec3dbf092630/pymatgen/core/surface.py#L1187","type":"object","properties":{"min_vacuum_size":{"description":"Minimum size of the vacuum in layers or angstroms","type":["integer","number"],"minimum":0,"default":0},"in_unit_planes":{"description":"Whether to use unit planes for the vacuum and slab size","type":"boolean","default":true},"reorient_lattice":{"description":"Whether to reorient the lattice to have c vector along the z-axis","type":"boolean","default":true},"symmetrize":{"description":"Whether to symmetrize the slab","type":"boolean","default":true}}},{"$schema":"http://json-schema.org/draft-07/schema#","$id":"compute/nodes/base","description":"Cloud Node - base schema for all backend node types","type":"object","title":"cloud node schema","properties":{"hostname":{"type":"string","title":"Hostname","description":"Fully qualified domain name of the node"},"alias":{"type":"string","title":"Alias","description":"Human-readable display name for the node"},"timestamp":{"type":"number","description":"Unix timestamp of last heartbeat from the node"},"type":{"type":"string","enum":["cluster","gold","login"],"description":"Type of cloud node: cluster (compute), gold (billing), or login (SSH access)"},"isDefault":{"type":"boolean","description":"Whether this is the default node for its type"},"diskSpace":{"type":"array","description":"Disk space information for mounted filesystems","items":{"type":"object","properties":{"name":{"type":"string"},"size":{"type":"number"},"avail":{"type":"number"}}}}},"required":["hostname"]},{"$schema":"http://json-schema.org/draft-07/schema#","$id":"compute/nodes/cluster","description":"Cluster Node - extends cloud node with compute-specific properties","type":"object","title":"cluster node schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","description":"Cloud Node - base schema for all backend node types","type":"object","title":"cloud node schema","properties":{"hostname":{"type":"string","title":"Hostname","description":"Fully qualified domain name of the node"},"alias":{"type":"string","title":"Alias","description":"Human-readable display name for the node"},"timestamp":{"type":"number","description":"Unix timestamp of last heartbeat from the node"},"type":{"type":"string","enum":["cluster","gold","login"],"description":"Type of cloud node: cluster (compute), gold (billing), or login (SSH access)"},"isDefault":{"type":"boolean","description":"Whether this is the default node for its type"},"diskSpace":{"type":"array","description":"Disk space information for mounted filesystems","items":{"type":"object","properties":{"name":{"type":"string"},"size":{"type":"number"},"avail":{"type":"number"}}}}},"required":["hostname"]}],"properties":{"nodes":{"type":"array","description":"List of compute nodes in the cluster","items":{"type":"object"}},"queues":{"type":"array","title":"Queues","description":"Available job submission queues on this cluster","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Queue schema","type":"object","properties":{"name":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"maxPPN":{"description":"Maximum processors per node.","type":"integer"},"maxNodes":{"description":"Maximum number of nodes allowed for this queue.","type":"integer"},"availableNodes":{"description":"Number of nodes currently available.","type":"integer"},"currentNodes":{"description":"Number of nodes currently in use.","type":"integer"},"capacity":{"description":"Capacity status of the queue.","type":"string","enum":["FULL","DEGRADED","UNAVAILABLE"]},"displayName":{"type":"string","title":"Display name"}},"required":["name","maxPPN","maxNodes","availableNodes","currentNodes"]}}}},{"$id":"compute/queue","$schema":"http://json-schema.org/draft-07/schema#","title":"Queue schema","type":"object","properties":{"name":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"maxPPN":{"description":"Maximum processors per node.","type":"integer"},"maxNodes":{"description":"Maximum number of nodes allowed for this queue.","type":"integer"},"availableNodes":{"description":"Number of nodes currently available.","type":"integer"},"currentNodes":{"description":"Number of nodes currently in use.","type":"integer"},"capacity":{"description":"Capacity status of the queue.","type":"string","enum":["FULL","DEGRADED","UNAVAILABLE"]},"displayName":{"type":"string","title":"Display name"}},"required":["name","maxPPN","maxNodes","availableNodes","currentNodes"]},{"$id":"context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"context provider schema","type":"object","properties":{"name":{"type":"string","enum":["PlanewaveCutoffDataManager","KGridFormDataManager","QGridFormDataManager","IGridFormDataManager","QPathFormDataManager","IPathFormDataManager","KPathFormDataManager","ExplicitKPathFormDataManager","ExplicitKPath2PIBAFormDataManager","HubbardJContextManager","HubbardUContextManager","HubbardVContextManager","HubbardContextManagerLegacy","NEBFormDataManager","BoundaryConditionsFormDataManager","MLSettingsDataManager","MLTrainTestSplitDataManager","IonDynamicsContextProvider","CollinearMagnetizationDataManager","NonCollinearMagnetizationDataManager","QEPWXInputDataManager","QENEBInputDataManager","VASPInputDataManager","VASPNEBInputDataManager","NWChemInputDataManager"],"tsEnumNames":["PlanewaveCutoffDataManager","KGridFormDataManager","QGridFormDataManager","IGridFormDataManager","QPathFormDataManager","IPathFormDataManager","KPathFormDataManager","ExplicitKPathFormDataManager","ExplicitKPath2PIBAFormDataManager","HubbardJContextManager","HubbardUContextManager","HubbardVContextManager","HubbardContextManagerLegacy","NEBFormDataManager","BoundaryConditionsFormDataManager","MLSettingsDataManager","MLTrainTestSplitDataManager","IonDynamicsContextProvider","CollinearMagnetizationDataManager","NonCollinearMagnetizationDataManager","QEPWXInputDataManager","QENEBInputDataManager","VASPInputDataManager","VASPNEBInputDataManager","NWChemInputDataManager"]},"domain":{"description":"domain of the context provider","type":"string"},"entityName":{"description":"entity name associated with the context provider","type":"string"},"data":{"description":"data object for the context provider","type":"object"},"extraData":{"description":"additional data object for the context provider","type":"object"},"isEdited":{"description":"flag indicating if the context provider has been edited","type":"boolean"},"context":{"description":"context object for the context provider","type":"object"}},"additionalProperties":true,"required":["name"]},{"$id":"context-providers-directory/boundary-conditions-data-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},{"$id":"context-providers-directory/by-application/nwchem-total-energy-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$id":"context-providers-directory/by-application/qe-neb-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$id":"context-providers-directory/by-application/qe-pwx-base-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"$id":"context-providers-directory/by-application/qe-pwx-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$id":"context-providers-directory/by-application/vasp-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$id":"context-providers-directory/by-application/vasp-neb-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]},{"$id":"context-providers-directory/collinear-magnetization-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},{"$id":"context-providers-directory/enum","definitions":{"ContextProviderNameEnum":{"type":"string","enum":["PlanewaveCutoffDataManager","KGridFormDataManager","QGridFormDataManager","IGridFormDataManager","QPathFormDataManager","IPathFormDataManager","KPathFormDataManager","ExplicitKPathFormDataManager","ExplicitKPath2PIBAFormDataManager","HubbardJContextManager","HubbardUContextManager","HubbardVContextManager","HubbardContextManagerLegacy","NEBFormDataManager","BoundaryConditionsFormDataManager","MLSettingsDataManager","MLTrainTestSplitDataManager","IonDynamicsContextProvider","CollinearMagnetizationDataManager","NonCollinearMagnetizationDataManager","QEPWXInputDataManager","QENEBInputDataManager","VASPInputDataManager","VASPNEBInputDataManager","NWChemInputDataManager"],"tsEnumNames":["PlanewaveCutoffDataManager","KGridFormDataManager","QGridFormDataManager","IGridFormDataManager","QPathFormDataManager","IPathFormDataManager","KPathFormDataManager","ExplicitKPathFormDataManager","ExplicitKPath2PIBAFormDataManager","HubbardJContextManager","HubbardUContextManager","HubbardVContextManager","HubbardContextManagerLegacy","NEBFormDataManager","BoundaryConditionsFormDataManager","MLSettingsDataManager","MLTrainTestSplitDataManager","IonDynamicsContextProvider","CollinearMagnetizationDataManager","NonCollinearMagnetizationDataManager","QEPWXInputDataManager","QENEBInputDataManager","VASPInputDataManager","VASPNEBInputDataManager","NWChemInputDataManager"]}}},{"$id":"context-providers-directory/hubbard-j-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}},{"$id":"context-providers-directory/hubbard-legacy-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},{"$id":"context-providers-directory/hubbard-u-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},{"$id":"context-providers-directory/hubbard-v-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}},{"$id":"context-providers-directory/ion-dynamics-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}},{"$id":"context-providers-directory/ml-settings-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}},{"$id":"context-providers-directory/ml-train-test-split-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}},{"$id":"context-providers-directory/neb-data-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}},{"$id":"context-providers-directory/non-collinear-magnetization-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},{"$id":"context-providers-directory/planewave-cutoffs-context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}},{"$id":"context-providers-directory/points-grid-data-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},{"$id":"context-providers-directory/points-path-data-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},{"$id":"context-providers-directory/points-path-data-provider-rendering","$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Rendering Schema","description":"Path in reciprocal space including derived Cartesian/fractional coordinates for template rendering. Not persisted on the context item.","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"},"coordinates":{"type":"array","items":{"type":"number","minItems":3,"maxItems":3}}},"required":["point","steps","coordinates"]}},{"$id":"core/abstract/2d-data","$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]},{"$id":"core/abstract/2d-plot","$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]},{"$id":"core/abstract/3d-grid","$schema":"http://json-schema.org/draft-07/schema#","title":"3 dimensional grid schema","type":"object","properties":{"dimensions":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"shifts":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}},"required":["dimensions","shifts"]},{"$id":"core/abstract/coordinate-2d","$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 2d schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},{"$id":"core/abstract/coordinate-3d","$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},{"$id":"core/abstract/matrix-3x3","$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},{"$id":"core/abstract/vector-2d","$schema":"http://json-schema.org/draft-07/schema#","title":"vector 2d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2}]},{"$id":"core/abstract/vector-3d","$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},{"$id":"core/abstract/vector-boolean-3d","$schema":"http://json-schema.org/draft-07/schema#","title":"vector boolean 3d schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 boolean elements schema","type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}]},{"$id":"core/primitive/1d-data-series","$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}},{"$id":"core/primitive/array-of-2-numbers","$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},{"$id":"core/primitive/array-of-3-booleans","$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 boolean elements schema","type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3},{"$id":"core/primitive/array-of-3-integers","$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3},{"$id":"core/primitive/array-of-3-numbers","$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"$id":"core/primitive/array-of-ids","$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}},{"$id":"core/primitive/array-of-strings","$schema":"http://json-schema.org/draft-07/schema#","title":"array of strings","description":"array of strings, e.g. metadata tags","type":"array","items":{"type":"string","uniqueItems":true}},{"$id":"core/primitive/axis","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},{"$id":"core/primitive/axis-3d-names-enum","$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},{"$id":"core/primitive/group-info","$schema":"http://json-schema.org/draft-07/schema#","title":"Group info schema for nodes in a graph","type":"object","properties":{"groupName":{"description":"Human-readable name of group of nodes","type":"string"},"groupId":{"description":"Unique identifier of the group a node belongs to","type":"string"}}},{"$id":"core/primitive/integer-one-or-zero","$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},{"$id":"core/primitive/integer-positive-single-digit","$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9},{"$id":"core/primitive/linked-list/base-node","$schema":"http://json-schema.org/draft-07/schema#","title":"basic node schema (linked list)","type":"object","allOf":[{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"}},"definitions":{"flowchart-id":{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}}},{"$id":"core/primitive/linked-list/named-node","$schema":"http://json-schema.org/draft-07/schema#","title":"Named node schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"basic node schema (linked list)","type":"object","allOf":[{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"}},"definitions":{"flowchart-id":{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$id":"core/primitive/linked-list/named-node-in-group","$schema":"http://json-schema.org/draft-07/schema#","title":"Named node in group schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named node schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"basic node schema (linked list)","type":"object","allOf":[{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"}},"definitions":{"flowchart-id":{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Group info schema for nodes in a graph","type":"object","properties":{"groupName":{"description":"Human-readable name of group of nodes","type":"string"},"groupId":{"description":"Unique identifier of the group a node belongs to","type":"string"}}}]},{"$id":"core/primitive/linked-list/node-with-type","$schema":"http://json-schema.org/draft-07/schema#","title":"Typed node schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"basic node schema (linked list)","type":"object","allOf":[{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"}},"definitions":{"flowchart-id":{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}}}],"properties":{"type":{"type":"string"}}},{"$id":"core/primitive/linked-list","$schema":"http://json-schema.org/draft-07/schema#","title":"linked list schema","type":"array","items":{"type":"object","anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"basic node schema (linked list)","type":"object","allOf":[{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"}},"definitions":{"flowchart-id":{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named node schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"basic node schema (linked list)","type":"object","allOf":[{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"}},"definitions":{"flowchart-id":{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named node in group schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named node schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"basic node schema (linked list)","type":"object","allOf":[{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"}},"definitions":{"flowchart-id":{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Group info schema for nodes in a graph","type":"object","properties":{"groupName":{"description":"Human-readable name of group of nodes","type":"string"},"groupId":{"description":"Unique identifier of the group a node belongs to","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Typed node schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"basic node schema (linked list)","type":"object","allOf":[{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"}},"definitions":{"flowchart-id":{"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}},"required":["flowchartId"]}}}],"properties":{"type":{"type":"string"}}}],"uniqueItems":true}},{"$id":"core/primitive/object-with-id","$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]},{"$id":"core/primitive/object-with-id-and-value","$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]},{"$id":"core/primitive/scalar","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]},{"$id":"core/primitive/slugified-entry","$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"$id":"core/primitive/slugified-entry-or-slug","$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},{"$id":"core/primitive/string","$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]},{"$id":"core/reference/exabyte","$schema":"http://json-schema.org/draft-07/schema#","type":"object","properties":{"jobId":{"description":"Job's identity","type":"string"},"unitId":{"description":"Id of the unit that extracted the result","type":"string"}},"required":["jobId","unitId"]},{"$id":"core/reference/experiment/condition","$schema":"http://json-schema.org/draft-07/schema#","title":"condition schema","type":"object","properties":{"units":{"description":"condition unit","type":"string"},"scalar":{"description":"array of condition values","type":"array","items":{"type":"object","properties":{"value":{"type":"string"}}}},"name":{"description":"human-readable name of the condition","type":"string"}},"required":["name"]},{"$id":"core/reference/experiment/location","$schema":"http://json-schema.org/draft-07/schema#","title":"location schema","type":"object","properties":{"latitude":{"description":"location latitude","type":"number"},"longitude":{"description":"location longitude","type":"number"}},"required":["latitude","longitude"]},{"$id":"core/reference/experiment","$schema":"http://json-schema.org/draft-07/schema#","title":"info for characteristic obtained by experiment","type":"object","properties":{"type":{"enum":["experiment"]},"authors":{"description":"experiment authors","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"title":{"type":"string","description":"experiment title"},"method":{"type":"string","description":"method used in experiment"},"conditions":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition schema","type":"object","properties":{"units":{"description":"condition unit","type":"string"},"scalar":{"description":"array of condition values","type":"array","items":{"type":"object","properties":{"value":{"type":"string"}}}},"name":{"description":"human-readable name of the condition","type":"string"}},"required":["name"]}},"location":{"$schema":"http://json-schema.org/draft-07/schema#","title":"location schema","type":"object","properties":{"latitude":{"description":"location latitude","type":"number"},"longitude":{"description":"location longitude","type":"number"}},"required":["latitude","longitude"]},"timestamp":{"description":"epoch time.","type":"number"},"note":{"description":"Note about experiment","type":"string"},"references":{"type":"array","description":"references to literature articles","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}}},"required":["conditions","authors","title","method","timestamp"]},{"$id":"core/reference/external","$schema":"http://json-schema.org/draft-07/schema#","type":"object","properties":{"measurementId":{"description":"Measurement's identity","type":"string"},"sampleId":{"description":"Identity of the sample the result is about","type":"string"},"unitId":{"description":"Id of the unit that extracted the result","type":"string"}},"required":["measurementId","unitId"]},{"$id":"core/reference/literature/name","$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]},{"$id":"core/reference/literature/pages","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]},{"$id":"core/reference/literature","$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}},{"$id":"core/reference/modeling/exabyte","$schema":"http://json-schema.org/draft-07/schema#","title":"info for characteristic obtained by exabyte calculation","type":"object","properties":{"type":{"enum":["exabyte"]},"title":{"description":"Human-readable title of the job","type":"string","maxLength":300},"_id":{"description":"job identifier","type":"string"},"owner":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}},"required":["title","_id","owner"]},{"$id":"core/reference/modeling","$schema":"http://json-schema.org/draft-07/schema#","title":"info for property obtained by modeling, only supports exabyte-originated data atm, but easily extendable","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"info for characteristic obtained by exabyte calculation","type":"object","properties":{"type":{"enum":["exabyte"]},"title":{"description":"Human-readable title of the job","type":"string","maxLength":300},"_id":{"description":"job identifier","type":"string"},"owner":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}},"required":["title","_id","owner"]}]},{"$id":"core/reference","$schema":"http://json-schema.org/draft-07/schema#","title":"reference schema (using `anyOf` instead of `oneOf` below b/c current reference schemas overlap)","anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"info for property obtained by modeling, only supports exabyte-originated data atm, but easily extendable","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"info for characteristic obtained by exabyte calculation","type":"object","properties":{"type":{"enum":["exabyte"]},"title":{"description":"Human-readable title of the job","type":"string","maxLength":300},"_id":{"description":"job identifier","type":"string"},"owner":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}},"required":["title","_id","owner"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"info for characteristic obtained by experiment","type":"object","properties":{"type":{"enum":["experiment"]},"authors":{"description":"experiment authors","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"title":{"type":"string","description":"experiment title"},"method":{"type":"string","description":"method used in experiment"},"conditions":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition schema","type":"object","properties":{"units":{"description":"condition unit","type":"string"},"scalar":{"description":"array of condition values","type":"array","items":{"type":"object","properties":{"value":{"type":"string"}}}},"name":{"description":"human-readable name of the condition","type":"string"}},"required":["name"]}},"location":{"$schema":"http://json-schema.org/draft-07/schema#","title":"location schema","type":"object","properties":{"latitude":{"description":"location latitude","type":"number"},"longitude":{"description":"location longitude","type":"number"}},"required":["latitude","longitude"]},"timestamp":{"description":"epoch time.","type":"number"},"note":{"description":"Note about experiment","type":"string"},"references":{"type":"array","description":"references to literature articles","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}}},"required":["conditions","authors","title","method","timestamp"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}]},{"$id":"core/reusable/atomic-data/per-orbital","$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital","description":"Atomic properties per orbital e.g., Hubbard U parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"}}},{"$id":"core/reusable/atomic-data/per-orbital-pair","$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair","description":"Atomic properties per orbital pair e.g., Hubbard V parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"id2":{"type":"integer","description":"Site number or index in the lattice of second site"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"atomicSpecies2":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co2, O"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalName2":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"distance":{"type":"number","description":"Distance between two sites in Bohr."}}},{"$id":"core/reusable/atomic-data/value-number","$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data numeric properties","description":"Numeric value specific to atomic data","type":"object","properties":{"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}},{"$id":"core/reusable/atomic-data/value-string","$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data string properties","description":"String value specific to atomic data","type":"object","properties":{"value":{"type":"string","description":"String value specific to atomic data"}}},{"$id":"core/reusable/atomic-data-per-orbital-numeric","$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital numeric","description":"Atomic properties per orbital pair with numeric value e.g., Hubbard V parameters.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital","description":"Atomic properties per orbital e.g., Hubbard U parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data numeric properties","description":"Numeric value specific to atomic data","type":"object","properties":{"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}]},{"$id":"core/reusable/atomic-data-per-orbital-pair-numeric","$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair numeric","description":"Atomic properties per orbital pair with numeric value e.g., Hubbard V parameters.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair","description":"Atomic properties per orbital pair e.g., Hubbard V parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"id2":{"type":"integer","description":"Site number or index in the lattice of second site"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"atomicSpecies2":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co2, O"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalName2":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"distance":{"type":"number","description":"Distance between two sites in Bohr."}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data numeric properties","description":"Numeric value specific to atomic data","type":"object","properties":{"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}]},{"$id":"core/reusable/atomic-orbital","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic orbital schema","type":"object","properties":{"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalIndex":{"type":"integer","minimum":1},"principalNumber":{"type":"integer","minimum":1,"maximum":7},"angularMomentum":{"type":"integer","minimum":0,"maximum":3},"occupation":{"type":"number","description":"Shell occupation","minimum":0,"maximum":14}}},{"$id":"core/reusable/atomic-scalars","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic scalars vectors schema","type":"array","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}}],"items":{"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}}}},{"$id":"core/reusable/atomic-string","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}},{"$id":"core/reusable/atomic-vector","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vector schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}},{"$id":"core/reusable/atomic-vectors","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vectors schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vector schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},{"$id":"core/reusable/band-gap","$schema":"http://json-schema.org/draft-07/schema#","title":"band gap schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"kpointConduction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"kpoint schema","description":"A k-point is a point in reciprocal space of a crystal.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}]},"kpointValence":{"$schema":"http://json-schema.org/draft-07/schema#","title":"kpoint schema","description":"A k-point is a point in reciprocal space of a crystal.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}]},"eigenvalueConduction":{"description":"eigenvalue at k-point in conduction band","type":"number"},"eigenvalueValence":{"description":"eigenvalue at k-point in valence band","type":"number"},"spin":{"type":"number"},"type":{"type":"string","enum":["direct","indirect"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}},"required":["type"]},{"$id":"core/reusable/categories","$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},{"$id":"core/reusable/category-path","$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"},{"$id":"core/reusable/combined-value","$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]},{"$id":"core/reusable/coordinate-conditions/base","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]},{"$id":"core/reusable/coordinate-conditions/box","$schema":"http://json-schema.org/draft-07/schema#","title":"Box Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"box","default":"box"},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["min_coordinate","max_coordinate"]},{"$id":"core/reusable/coordinate-conditions/cylinder","$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"cylinder","default":"cylinder"},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["radius","min_z","max_z"]},{"$id":"core/reusable/coordinate-conditions/enum","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},{"$id":"core/reusable/coordinate-conditions/index","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Conditions Schema","description":"Combined schema for all coordinate condition types","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Box Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"box","default":"box"},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["min_coordinate","max_coordinate"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"sphere","default":"sphere"},"radius":{"type":"number","minimum":0}},"required":["radius"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"cylinder","default":"cylinder"},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["radius","min_z","max_z"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"triangular_prism","default":"triangular_prism"},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["position_on_surface_1","position_on_surface_2","position_on_surface_3","min_z","max_z"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"plane","default":"plane"},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["plane_normal","plane_point_coordinate"]}]},{"$id":"core/reusable/coordinate-conditions/plane","$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"plane","default":"plane"},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["plane_normal","plane_point_coordinate"]},{"$id":"core/reusable/coordinate-conditions/sphere","$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"sphere","default":"sphere"},"radius":{"type":"number","minimum":0}},"required":["radius"]},{"$id":"core/reusable/coordinate-conditions/triangular-prism","$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"triangular_prism","default":"triangular_prism"},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["position_on_surface_1","position_on_surface_2","position_on_surface_3","min_z","max_z"]},{"$id":"core/reusable/dielectric-tensor-component","$schema":"http://json-schema.org/draft-07/schema#","title":"Dielectric Tensor","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"","description":"Schema for a function of frequency yielding a nx3 matrix","type":"object","properties":{"frequencies":{"description":"Frequencies","type":"array","items":{"type":"number"}},"components":{"description":"Matrix with 3 columns, e.g. x, y, z","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}],"properties":{"part":{"description":"Real or imaginary part of the dielectric tensor component","type":"string","enum":["real","imaginary"]},"spin":{"type":"number"}},"required":["part","frequencies","components"]},{"$id":"core/reusable/energy","$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]},{"$id":"core/reusable/energy-accuracy-levels","$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for energy value with unit corresponding to a specific accuracy level, e.g., used for suggested wavefunction and charge density cutoffs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for scalar values with accuracy levels","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]}},"required":["accuracy_level"]}],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]}},"required":["unit"]},{"$id":"core/reusable/field-condition","$schema":"http://json-schema.org/draft-07/schema#","title":"Field condition schema","description":"Whether a switching-spectroscopy reading was taken with the bias applied (on, in-field) or after each pulse at zero bias (off, out-of-field)","type":"string","enum":["on","off"]},{"$id":"core/reusable/file-metadata","$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}},{"$id":"core/reusable/formation-energy-contribution","$schema":"http://json-schema.org/draft-07/schema#","title":"Formation energy contribution schema","description":"Total energy contribution of one material used in formation energy calculation.","type":"object","properties":{"formula":{"description":"formula or label for the material used in the formation energy calculation","type":"string"},"n_atoms":{"description":"number of atoms in the material","type":"integer"},"is_elemental":{"description":"whether the material is an elemental reference","type":"boolean"},"total_energy":{"description":"total energy of the material","type":"number"},"total_energy_per_atom":{"description":"total energy per atom of the material","type":"number"},"precision_value":{"description":"precision value for the total energy property","type":"number","default":-1},"precision_metric":{"description":"metric used to report total energy precision","type":"string","enum":["unknown","KPPRA","spacing"],"default":"unknown"}},"required":["formula","n_atoms","is_elemental","total_energy","total_energy_per_atom","precision_metric","precision_value"]},{"$id":"core/reusable/frequency-function-matrix","$schema":"http://json-schema.org/draft-07/schema#","title":"","description":"Schema for a function of frequency yielding a nx3 matrix","type":"object","properties":{"frequencies":{"description":"Frequencies","type":"array","items":{"type":"number"}},"components":{"description":"Matrix with 3 columns, e.g. x, y, z","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}},{"$id":"core/reusable/hysteresis-loop-parameters","$schema":"http://json-schema.org/draft-07/schema#","title":"Hysteresis loop parameters schema","description":"Parameters read from a hysteresis loop, each combined over the loops measured at one field condition. Voltages are in the loop's xAxis units, responses in its yAxis units","type":"object","properties":{"imprint":{"description":"bias at the centre of the loop: half the sum of the two coercive voltages","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}]},"coerciveVoltage":{"description":"bias at which the response crosses the loop's offset, on the rising and the falling branch","type":"object","allOf":[{"type":"object","properties":{"rising":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]},"falling":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}},"required":["rising","falling"]}]},"loopWidth":{"description":"bias separation of the two coercive voltages","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}]},"loopHeight":{"description":"response separation of the two remanent responses","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}]},"remanentResponse":{"description":"response at zero bias, on the rising and the falling branch","type":"object","allOf":[{"type":"object","properties":{"rising":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]},"falling":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}},"required":["rising","falling"]}]}},"required":["imprint","coerciveVoltage","loopWidth","loopHeight","remanentResponse"],"definitions":{"branch-pair":{"type":"object","properties":{"rising":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]},"falling":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}},"required":["rising","falling"]}}},{"$id":"core/reusable/kpoint","$schema":"http://json-schema.org/draft-07/schema#","title":"kpoint schema","description":"A k-point is a point in reciprocal space of a crystal.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}]},{"$id":"core/reusable/object-storage-container-data","$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},{"$id":"core/reusable/scalar-with-accuracy-levels","$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for scalar values with accuracy levels","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]}},"required":["accuracy_level"]},{"$id":"definitions/chemical-elements","title":"Chemical Element Symbols","periodic_table":{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},"extra":{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]},"all":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}},{"$id":"definitions/constants","title":"fundamental constants","description":"Fundamental physical constants, 2022 NIST CODATA (https://doi.org/10.48550/arXiv.2409.03787)","type":"object","properties":{"c":{"description":"speed of light in vacuum, \"units\": \"m/s\"","type":"number","default":299792458},"h":{"description":"Planck constant, \"units\": \"J s\"","type":"number","default":6.62607015e-34},"e":{"description":"elementary charge, \"units\": \"C\"","type":"number","default":1.602176634e-19},"G":{"description":"Newtonian constant of gravitation, \"units\": \"m^3/kg/s^2\"","type":"number","default":6.6743015e-11},"me":{"description":"electron mass \"units\": \"kg\"","type":"number","default":9.109383713928e-31},"eps0":{"description":"vacuum permittivity, \"units\": \"F/m\"","type":"number","default":8.854187818814e-12},"mu0":{"description":"vacuum permeability, \"units\": \"N/A^2\"","type":"number","default":0.000001256637061272}},"required":["c","h","e","G","me","eps0","mu0"]},{"$id":"definitions/material","title":"Materials Definitions","form_factor":{"description":"Form factor of the material","enum":["bulk","slab","monolayer","nanoribbon"]},"dimensionality":{"description":"Dimensionality of the material","enum":["zero-dimensional","one-dimensional","two-dimensional","three-dimensional"]}},{"$id":"definitions/units","title":"all units definitions","angle":{"enum":["degree","radian"],"default":"degree"},"coordinates_basis":{"enum":["crystal","cartesian"],"default":"crystal"},"coordinates_lattice_reciprocal":{"enum":["crystal","cartesian"],"default":"crystal"},"length":{"enum":["km","m","cm","mm","um","nm","angstrom","a.u.","bohr","pm"]},"length_atomic":{"enum":["angstrom","bohr"],"default":"angstrom"},"voltage":{"enum":["V","mV"]},"energy":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},"energy_atomic":{"enum":["eV","hartree","rydberg"],"default":"eV"},"surface_energy":{"enum":["eV/A^2"]},"force":{"enum":["eV/bohr","eV/angstrom","Ry/a.u.","newton","kg*m/s^2","eV/a.u."]},"volume":{"enum":["cm^3","angstrom^3"]},"numberDensity":{"enum":["1/angstrom^3"]},"density":{"enum":["g/cm^3"]},"frequency":{"enum":["cm-1","THz","meV"]},"pressure":{"enum":["kbar","pa"]},"phononDOS":{"enum":["states/cm-1","states/THz","states/meV"]},"electronicDOS":{"enum":["states/unitcell"]},"magnetic":{"enum":["uB"]},"chargeDensity":{"enum":["e/A"]},"spectralIntensity":{"enum":["(debye/angstrom)^2","km/mol","m/mol","a.u."]}},{"$id":"element","$schema":"http://json-schema.org/draft-07/schema#","title":"element schema","type":"object","properties":{"symbol":{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},"properties":{"type":"array","description":"list of elemental properties","items":{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic radius","description":"atomic radius","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["atomic_radius"]},"units":{"enum":["km","m","cm","mm","um","nm","angstrom","a.u.","bohr","pm"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"electronegativity","description":"electronegativity for the element (Pauling scale)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["electronegativity"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ionization potential elemental property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["ionization_potential"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}},"required":["name","units"]}]}}}},{"$id":"in-memory-entity/base","$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$id":"in-memory-entity/defaultable","$schema":"http://json-schema.org/draft-07/schema#","title":"Defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$id":"in-memory-entity/has-consistency-check-has-metadata-named-defaultable","$schema":"http://json-schema.org/draft-07/schema#","title":"has consistency check has metadata named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable has metadata in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Has consistency check schema","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}}}}]},{"$id":"in-memory-entity/named","$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$id":"in-memory-entity/named-defaultable","$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$id":"in-memory-entity/named-defaultable-has-metadata","$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable has metadata in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}}]},{"$id":"in-memory-entity/named-defaultable-runtime-items","$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable runtime items in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema (pre-/post-processors, monitors, results","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"additionalProperties":true,"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"RuntimeItemString","description":"name of runtime item in shortened notation","type":"string"}]}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"additionalProperties":true,"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"RuntimeItemString","description":"name of runtime item in shortened notation","type":"string"}]}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"additionalProperties":true,"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"RuntimeItemString","description":"name of runtime item in shortened notation","type":"string"}]}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"additionalProperties":true,"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"RuntimeItemString","description":"name of runtime item in shortened notation","type":"string"}]}}}}]},{"$id":"job/base","$schema":"http://json-schema.org/draft-07/schema#","title":"job base schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable has metadata in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Compute Property Schema","type":"object","properties":{"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]}},"required":["compute"]}],"properties":{"rmsId":{"description":"Identity used to track jobs originated from command-line","type":"string"},"status":{"description":"job status","enum":["pre-submission","queued","submitted","active","finished","terminate-queued","terminated","error","deleted","timeout"]},"startTime":{"description":"Approximate start time of the job. e.g. within 10 min","type":"string"},"workDir":{"description":"The path to the working directory of this job, when the job originates from command-line","type":"string"},"_project":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]},"_material":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]},"parent":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]},"runtimeContext":{"description":"Context variables that the job will have access to at runtime","type":"object"},"scopeTrack":{"description":"history of the workflow scope on each update","type":"array","items":{"type":"object","properties":{"repetition":{"type":"number"},"scope":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow scope schema","type":"object","properties":{"global":{"type":"object","additionalProperties":true},"local":{"type":"object","additionalProperties":true}},"required":["global","local"]}}}}},"required":["status","_project"]},{"$id":"job/compute","$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]},{"$id":"job/compute-property","$schema":"http://json-schema.org/draft-07/schema#","title":"Compute Property Schema","type":"object","properties":{"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]}},"required":["compute"]},{"$id":"job","$schema":"http://json-schema.org/draft-07/schema#","title":"job schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"job base schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable has metadata in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Compute Property Schema","type":"object","properties":{"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]}},"required":["compute"]}],"properties":{"rmsId":{"description":"Identity used to track jobs originated from command-line","type":"string"},"status":{"description":"job status","enum":["pre-submission","queued","submitted","active","finished","terminate-queued","terminated","error","deleted","timeout"]},"startTime":{"description":"Approximate start time of the job. e.g. within 10 min","type":"string"},"workDir":{"description":"The path to the working directory of this job, when the job originates from command-line","type":"string"},"_project":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]},"_material":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]},"parent":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]},"runtimeContext":{"description":"Context variables that the job will have access to at runtime","type":"object"},"scopeTrack":{"description":"history of the workflow scope on each update","type":"array","items":{"type":"object","properties":{"repetition":{"type":"number"},"scope":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow scope schema","type":"object","properties":{"global":{"type":"object","additionalProperties":true},"local":{"type":"object","additionalProperties":true}},"required":["global","local"]}}}}},"required":["status","_project"]}],"properties":{"workflow":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"base workflow schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this workflow (TODO: add enums)","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"isUsingDataset":{"description":"Whether to use the dataset tab in the job designer. Mutually exclusive with using the materials tab.","type":"boolean"},"isMultiMaterial":{"description":"Defines whether the workflow is for a multi-material simulation","type":"boolean"},"subworkflows":{"description":"Array of subworkflows. Subworkflow can be an instance of workflow to allow for nesting","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Mixin Schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this subworkflow","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]},"units":{"description":"Contains the Units of the subworkflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow subworkflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","properties":{"type":{"const":"io"},"subtype":{"enum":["input","output","dataFrame"]},"source":{"enum":["api","object_storage"]},"input":{"type":"array","items":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]}],"discriminator":{"propertyName":"type"}}}},"required":["subtype","source","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","properties":{"type":{"const":"condition"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"statement":{"description":"Condition statement. e.g. 'abs(x-total_energy) < 1e-5'","type":"string"},"then":{"description":"Flowchart ID reference for `then` part of the condition.","type":"string"},"else":{"description":"Flowchart ID reference for `else` part of the condition.","type":"string"},"maxOccurrences":{"description":"Maximum occurrence of the condition, usable for loops.","type":"integer"},"throwException":{"description":"Throw exception on reaching to maximum occurence.","type":"boolean"}},"required":["input","statement","then","else","maxOccurrences"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","properties":{"type":{"const":"assertion"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}},"required":["name","statement"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"scope schema","type":"object","properties":{"scope":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","properties":{"type":{"const":"assignment"},"input":{"description":"Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"operand":{"description":"Name of the global variable. e.g. 'x'","type":"string"},"value":{"description":"Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}},"required":["name","operand","value"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"model":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Any model schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"lda"},"functional":{"enum":["pz","pw","vwn","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"gga"},"functional":{"enum":["pbe","pbesol","pw91","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"hybrid"},"functional":{"enum":["b3lyp","hse06","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML model schema","type":"object","properties":{"type":{"enum":["ml"]},"subtype":{"enum":["re"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unknown model schema","type":"object","properties":{"type":{"enum":["unknown"]},"subtype":{"enum":["unknown"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}},"required":["model","properties","application","units"]}]}},"units":{"description":"Contains the Units of the Workflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit mixin schema","type":"object","properties":{"type":{"const":"map"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","properties":{"target":{"description":"Name of the target variable to substitute using the values below. e.g. K_POINTS","type":"string"},"scope":{"description":"Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.","type":"string"},"name":{"description":"Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.","type":"string"},"values":{"description":"Sequence of values for the target Jinja variable. Optional if `scope` and `name` are given. This can be used for map-reduce type parallel execution","type":"array","items":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"object"}]}},"useValues":{"type":"boolean"}},"required":["target"]}},"required":["input","workflowId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit mixin schema","type":"object","properties":{"type":{"const":"reduce"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","properties":{"operation":{"description":"reduce operation, e.g. aggregate","type":"string"},"arguments":{"description":"arguments which are passed to reduce operation function","type":"array","items":{"type":"string"}}},"required":["operation","arguments"]}}},"required":["mapFlowchartId","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"application":{"description":"information about the main application used for workflow categorization by application in standata.","type":"object","properties":{"name":{"description":"name of the application","type":"string"}}},"tags":{"description":"tags for the workflow","type":"array","items":{"type":"string"}}},"required":["properties","units","subworkflows"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Description schema","type":"object","properties":{"description":{"description":"entity description","type":"string"},"descriptionObject":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"workflows":{"description":"Array of workflows with the same schema as the current one.","type":"array","items":{"type":"object"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]}},"required":["workflows"]}},"required":["workflow"]},{"$id":"material/consistency-check","$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}},{"$id":"material/conventional","$schema":"http://json-schema.org/draft-07/schema#","title":"material conventional schema","type":"object","properties":{"conventional":{"type":"object"}}},{"$id":"material/material-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$id":"material/metadata/boundary-conditions","$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$id":"material/metadata/bulk-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true},{"$id":"material/metadata/slab-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$id":"material/metadata","$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]},{"$id":"material","$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]},{"$id":"material-enhanced","$schema":"http://json-schema.org/draft-07/schema#","title":"material enhanced schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]},{"properties":{"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis constrained schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},{"properties":{"constraints":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraints schema","description":"atomic constraints schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraint schema","description":"constraint of atoms by ids, used to constraint the position etc.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector boolean 3d schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 boolean elements schema","type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}]}}}}},"required":["constraints"]}]}}}]},{"$id":"material-enhanced-hashed","$schema":"http://json-schema.org/draft-07/schema#","title":"material enhanced hashed schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material enhanced schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]},{"properties":{"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis constrained schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},{"properties":{"constraints":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraints schema","description":"atomic constraints schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraint schema","description":"constraint of atoms by ids, used to constraint the position etc.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector boolean 3d schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 boolean elements schema","type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}]}}}}},"required":["constraints"]}]}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material hashed schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hashed schema","type":"object","properties":{"hash":{"description":"Hash string which is calculated based on the meaningful fields of the entity. Used to identify equal entities.","type":"string"}},"required":["hash"]},{"properties":{"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"}}}]}]},{"$id":"material-hashed","$schema":"http://json-schema.org/draft-07/schema#","title":"material hashed schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hashed schema","type":"object","properties":{"hash":{"description":"Hash string which is calculated based on the meaningful fields of the entity. Used to identify equal entities.","type":"string"}},"required":["hash"]},{"properties":{"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"}}}]},{"$id":"materials-category/compound-pristine-structures/two-dimensional/interface/configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"Interface Configuration Schema","description":"A two-dimensional interface between two slabs, optionally including vacuum, with a specified stacking direction.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":3,"items":[{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Strained Supercell Configuration Schema","description":"A slab structure configuration with supercell transformation and strain matrix in the xy plane","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}}],"properties":{"xy_supercell_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Matrix 2D Schema","description":"Supercell matrix for xy plane transformations","type":"array","items":{"type":"array","items":{"type":"integer"},"minItems":2,"maxItems":2},"minItems":2,"maxItems":2,"default":[[1,0],[0,1]]},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3}},"required":["xy_supercell_matrix","strain_matrix"]}]},{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Strained Supercell Configuration Schema","description":"A slab structure configuration with supercell transformation and strain matrix in the xy plane","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}}],"properties":{"xy_supercell_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Matrix 2D Schema","description":"Supercell matrix for xy plane transformations","type":"array","items":{"type":"array","items":{"type":"integer"},"minItems":2,"maxItems":2},"minItems":2,"maxItems":2,"default":[[1,0],[0,1]]},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3}},"required":["xy_supercell_matrix","strain_matrix"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}],"description":"Components of the interface: slab, slab and vacuum"},"direction":{"default":"z"},"xy_shift":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 2d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2}]}],"default":[0,0],"description":"xy shift for the film as cartesian 2D vector on the xy plane."}}},{"$id":"materials-category/defective-structures/one-dimensional/grain-boundary-linear/configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"Grain Boundary Linear Configuration Schema","description":"Configuration for creating a linear grain boundary.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Interface Configuration Schema","description":"A two-dimensional interface between two slabs, optionally including vacuum, with a specified stacking direction.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":3,"items":[{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Strained Supercell Configuration Schema","description":"A slab structure configuration with supercell transformation and strain matrix in the xy plane","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}}],"properties":{"xy_supercell_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Matrix 2D Schema","description":"Supercell matrix for xy plane transformations","type":"array","items":{"type":"array","items":{"type":"integer"},"minItems":2,"maxItems":2},"minItems":2,"maxItems":2,"default":[[1,0],[0,1]]},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3}},"required":["xy_supercell_matrix","strain_matrix"]}]},{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Strained Supercell Configuration Schema","description":"A slab structure configuration with supercell transformation and strain matrix in the xy plane","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}}],"properties":{"xy_supercell_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Matrix 2D Schema","description":"Supercell matrix for xy plane transformations","type":"array","items":{"type":"array","items":{"type":"integer"},"minItems":2,"maxItems":2},"minItems":2,"maxItems":2,"default":[[1,0],[0,1]]},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3}},"required":["xy_supercell_matrix","strain_matrix"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}],"description":"Components of the interface: slab, slab and vacuum"},"direction":{"default":"z"},"xy_shift":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 2d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2}]}],"default":[0,0],"description":"xy shift for the film as cartesian 2D vector on the xy plane."}}}],"properties":{"stack_components":{"maxItems":2},"direction":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]}],"default":"x"},"actual_angle":{"type":"number","description":"The actual angle between the two phases","minimum":0,"maximum":360}},"required":["stack_components","direction"]},{"$id":"materials-category/defective-structures/three-dimensional/solid-solution/configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"Solid Solution Configuration Schema","description":"Configuration for a solid solution: a crystal with partial element substitution, using merge operation.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Schema","description":"A component of a stack, which can be a crystal or a vacuum","properties":{"merge_components":{"type":"array"},"merge_method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}},"required":["merge_components","merge_method"]}],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"source_element":{"description":"Element to partially replace (e.g. Hf).","type":"string"},"target_element":{"description":"Replacement element (e.g. Zr).","type":"string"},"target_concentration":{"description":"Requested fraction of source element sites to replace (0.0-1.0).","type":"number","minimum":0,"maximum":1},"actual_concentration":{"description":"Achievable fraction after supercell discretization and site rounding (0.0-1.0).","type":"number","minimum":0,"maximum":1},"merge_components":{"type":"array","items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Point Defect Site Schema","description":"A crystal site with defect information (atom or vacancy) for point defects","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Site Schema","description":"A site in a crystal that can be populated with an atom, vacancy, or void. Should be place in a target basis.","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["crystal","coordinate"]},{"type":"object","properties":{"element":{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atom Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]}},"required":["chemical_element"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacancy Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"allOf":[{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}],"default":"Vac"}},"required":["chemical_element"]}]}},"required":["element"]}]}]},"merge_method":{"default":"REPLACE"}},"required":["crystal","source_element","target_element","target_concentration","actual_concentration","merge_components","merge_method"]},{"$id":"materials-category/defective-structures/two-dimensional/adatom/configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"Adatom Defect Configuration Schema","description":"An adatom point defect configuration where an atom is added to a surface site on a slab.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Stack Configuration Schema","description":"Base configuration for a slab stack with another component and vacuum in the z-direction.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":3,"maxItems":3,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"type":"object"},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}}],"properties":{"stack_components":{"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Point Defect Site Schema","description":"A crystal site with defect information (atom or vacancy) for point defects","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Site Schema","description":"A site in a crystal that can be populated with an atom, vacancy, or void. Should be place in a target basis.","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["crystal","coordinate"]},{"type":"object","properties":{"element":{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atom Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]}},"required":["chemical_element"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacancy Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"allOf":[{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}],"default":"Vac"}},"required":["chemical_element"]}]}},"required":["element"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]}}},{"$id":"materials-category/defective-structures/two-dimensional/grain-boundary-planar/configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"Grain Boundary Planar Configuration Schema","description":"Configuration for creating a grain boundary between two phases.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Interface Configuration Schema","description":"A two-dimensional interface between two slabs, optionally including vacuum, with a specified stacking direction.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":3,"items":[{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Strained Supercell Configuration Schema","description":"A slab structure configuration with supercell transformation and strain matrix in the xy plane","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}}],"properties":{"xy_supercell_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Matrix 2D Schema","description":"Supercell matrix for xy plane transformations","type":"array","items":{"type":"array","items":{"type":"integer"},"minItems":2,"maxItems":2},"minItems":2,"maxItems":2,"default":[[1,0],[0,1]]},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3}},"required":["xy_supercell_matrix","strain_matrix"]}]},{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Strained Supercell Configuration Schema","description":"A slab structure configuration with supercell transformation and strain matrix in the xy plane","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}}],"properties":{"xy_supercell_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Matrix 2D Schema","description":"Supercell matrix for xy plane transformations","type":"array","items":{"type":"array","items":{"type":"integer"},"minItems":2,"maxItems":2},"minItems":2,"maxItems":2,"default":[[1,0],[0,1]]},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3}},"required":["xy_supercell_matrix","strain_matrix"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}],"description":"Components of the interface: slab, slab and vacuum"},"direction":{"default":"z"},"xy_shift":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 2d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2}]}],"default":[0,0],"description":"xy shift for the film as cartesian 2D vector on the xy plane."}}}],"properties":{"direction":{"default":"z"}}},{"$id":"materials-category/defective-structures/two-dimensional/island/configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"Island Defect Configuration Schema","description":"An island defect configuration where a void region is created in a slab, leaving an island of material.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Stack Configuration Schema","description":"Base configuration for a slab stack with another component and vacuum in the z-direction.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":3,"maxItems":3,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"type":"object"},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}}],"properties":{"stack_components":{"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Schema","description":"A component of a stack, which can be a crystal or a vacuum","properties":{"merge_components":{"type":"array"},"merge_method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}},"required":["merge_components","merge_method"]}],"properties":{"merge_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Void Region Schema","description":"A void region that applies coordinate condition to a crystal or slab and creates a void region","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"coordinate_condition":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Conditions Schema","description":"Combined schema for all coordinate condition types","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Box Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"box","default":"box"},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["min_coordinate","max_coordinate"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"sphere","default":"sphere"},"radius":{"type":"number","minimum":0}},"required":["radius"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"cylinder","default":"cylinder"},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["radius","min_z","max_z"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"triangular_prism","default":"triangular_prism"},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["position_on_surface_1","position_on_surface_2","position_on_surface_3","min_z","max_z"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"plane","default":"plane"},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["plane_normal","plane_point_coordinate"]}]}},"required":["crystal","coordinate_condition"]}]},"merge_method":{"default":"REPLACE"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]}}},{"$id":"materials-category/defective-structures/two-dimensional/terrace/configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"Terrace Defect Configuration Schema","description":"An terrace defect configuration where a void region is created in a slab that is stacked with another slab, creating a terrace.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Stack Configuration Schema","description":"Base configuration for a slab stack with another component and vacuum in the z-direction.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":3,"maxItems":3,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"type":"object"},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}}],"properties":{"stack_components":{"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Schema","description":"A component of a stack, which can be a crystal or a vacuum","properties":{"merge_components":{"type":"array"},"merge_method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}},"required":["merge_components","merge_method"]}],"properties":{"merge_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Void Region Schema","description":"A void region that applies coordinate condition to a crystal or slab and creates a void region","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"coordinate_condition":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Conditions Schema","description":"Combined schema for all coordinate condition types","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Box Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"box","default":"box"},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["min_coordinate","max_coordinate"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"sphere","default":"sphere"},"radius":{"type":"number","minimum":0}},"required":["radius"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"cylinder","default":"cylinder"},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["radius","min_z","max_z"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"triangular_prism","default":"triangular_prism"},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["position_on_surface_1","position_on_surface_2","position_on_surface_3","min_z","max_z"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"plane","default":"plane"},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["plane_normal","plane_point_coordinate"]}]}},"required":["crystal","coordinate_condition"]}]},"merge_method":{"default":"REPLACE"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"cut_direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["stack_components","cut_direction"]},{"$id":"materials-category/defective-structures/zero-dimensional/point-defect/base-configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"Point Defect Base Configuration Schema","description":"Base configuration for a point defect in a host crystal using merge operation.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Schema","description":"A component of a stack, which can be a crystal or a vacuum","properties":{"merge_components":{"type":"array"},"merge_method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}},"required":["merge_components","merge_method"]}],"properties":{"merge_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}]},"merge_method":{"default":"REPLACE"}},"required":["merge_components","merge_method"]},{"$id":"materials-category/defective-structures/zero-dimensional/point-defect/interstitial","$schema":"http://json-schema.org/draft-07/schema#","title":"Interstitial Point Defect Schema","description":"An interstitial point defect configuration where an atom is added to an interstitial site.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Point Defect Base Configuration Schema","description":"Base configuration for a point defect in a host crystal using merge operation.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Schema","description":"A component of a stack, which can be a crystal or a vacuum","properties":{"merge_components":{"type":"array"},"merge_method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}},"required":["merge_components","merge_method"]}],"properties":{"merge_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}]},"merge_method":{"default":"REPLACE"}},"required":["merge_components","merge_method"]}],"properties":{"merge_components":{"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Point Defect Site Schema","description":"A crystal site with defect information (atom or vacancy) for point defects","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Site Schema","description":"A site in a crystal that can be populated with an atom, vacancy, or void. Should be place in a target basis.","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["crystal","coordinate"]},{"type":"object","properties":{"element":{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atom Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]}},"required":["chemical_element"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacancy Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"allOf":[{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}],"default":"Vac"}},"required":["chemical_element"]}]}},"required":["element"]}]}]}}},{"$id":"materials-category/defective-structures/zero-dimensional/point-defect/substitutional","$schema":"http://json-schema.org/draft-07/schema#","title":"Substitutional Point Defect Schema","description":"A substitutional point defect configuration where an atom at a crystal site is replaced with a different element.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Point Defect Base Configuration Schema","description":"Base configuration for a point defect in a host crystal using merge operation.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Schema","description":"A component of a stack, which can be a crystal or a vacuum","properties":{"merge_components":{"type":"array"},"merge_method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}},"required":["merge_components","merge_method"]}],"properties":{"merge_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}]},"merge_method":{"default":"REPLACE"}},"required":["merge_components","merge_method"]}],"properties":{"merge_components":{"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Point Defect Site Schema","description":"A crystal site with defect information (atom or vacancy) for point defects","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Site Schema","description":"A site in a crystal that can be populated with an atom, vacancy, or void. Should be place in a target basis.","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["crystal","coordinate"]},{"type":"object","properties":{"element":{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atom Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]}},"required":["chemical_element"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacancy Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"allOf":[{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}],"default":"Vac"}},"required":["chemical_element"]}]}},"required":["element"]}]}]}}},{"$id":"materials-category/defective-structures/zero-dimensional/point-defect/vacancy","$schema":"http://json-schema.org/draft-07/schema#","title":"Vacancy Point Defect Schema","description":"A vacancy point defect configuration where an atom is removed from a crystal site.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Point Defect Base Configuration Schema","description":"Base configuration for a point defect in a host crystal using merge operation.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Schema","description":"A component of a stack, which can be a crystal or a vacuum","properties":{"merge_components":{"type":"array"},"merge_method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}},"required":["merge_components","merge_method"]}],"properties":{"merge_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}]},"merge_method":{"default":"REPLACE"}},"required":["merge_components","merge_method"]}],"properties":{"merge_components":{"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacancy Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"allOf":[{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}],"default":"Vac"}},"required":["chemical_element"]}]}}},{"$id":"materials-category/pristine-structures/three-dimensional/ideal-crystal","$schema":"http://json-schema.org/draft-07/schema#","title":"Ideal Crystal Schema","description":"An ideal, perfect crystal structure","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}]},{"$id":"materials-category/pristine-structures/two-dimensional/nanoribbon","$schema":"http://json-schema.org/draft-07/schema#","title":"Nanoribbon Configuration Schema","description":"A nanoribbon unit cell consisting of nanotape and vacuum stacked in X direction.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NanoTape Configuration Schema","description":"A nanotape unit cell consisting of crystal lattice lines and vacuum stacked in Y direction.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Lines Unique Repeated Schema","description":"Crystal lattice lines unique with integer number of repetitions, forming a full periodic structure with terminations","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Lines Schema","description":"A set of crystal lattice lines defined by 2D Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices_2d":{"$schema":"http://json-schema.org/draft-07/schema#","title":"2D Miller Indices Schema","description":"The (u,v) Miller indices for the line direction","type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"required":["miller_indices_2d"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"termination_bottom":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions_width":{"type":"integer","minimum":1,"default":1,"description":"Number of repetitions in width direction"},"number_of_repetitions_length":{"type":"integer","minimum":1,"default":1,"description":"Number of repetitions in length direction"}},"required":["termination_top"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"y"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"x"}}},{"$id":"materials-category/pristine-structures/two-dimensional/nanotape","$schema":"http://json-schema.org/draft-07/schema#","title":"NanoTape Configuration Schema","description":"A nanotape unit cell consisting of crystal lattice lines and vacuum stacked in Y direction.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Lines Unique Repeated Schema","description":"Crystal lattice lines unique with integer number of repetitions, forming a full periodic structure with terminations","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Lines Schema","description":"A set of crystal lattice lines defined by 2D Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices_2d":{"$schema":"http://json-schema.org/draft-07/schema#","title":"2D Miller Indices Schema","description":"The (u,v) Miller indices for the line direction","type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"required":["miller_indices_2d"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"termination_bottom":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions_width":{"type":"integer","minimum":1,"default":1,"description":"Number of repetitions in width direction"},"number_of_repetitions_length":{"type":"integer","minimum":1,"default":1,"description":"Number of repetitions in length direction"}},"required":["termination_top"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"y"}}},{"$id":"materials-category/pristine-structures/two-dimensional/slab","$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$id":"materials-category/pristine-structures/two-dimensional/slab-strained-supercell","$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Strained Supercell Configuration Schema","description":"A slab structure configuration with supercell transformation and strain matrix in the xy plane","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}}],"properties":{"xy_supercell_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Matrix 2D Schema","description":"Supercell matrix for xy plane transformations","type":"array","items":{"type":"array","items":{"type":"integer"},"minItems":2,"maxItems":2},"minItems":2,"maxItems":2,"default":[[1,0],[0,1]]},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3}},"required":["xy_supercell_matrix","strain_matrix"]},{"$id":"materials-category/processed-structures/two-dimensional/passivation/configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"Passivation Configuration Schema","description":"Configuration for a passivation that adds passivating atoms to a material surface.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Schema","description":"A component of a stack, which can be a crystal or a vacuum","properties":{"merge_components":{"type":"array"},"merge_method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}},"required":["merge_components","merge_method"]}],"properties":{"merge_components":{"type":"array","minItems":2,"items":{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Point Defect Site Schema","description":"A crystal site with defect information (atom or vacancy) for point defects","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Site Schema","description":"A site in a crystal that can be populated with an atom, vacancy, or void. Should be place in a target basis.","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["crystal","coordinate"]},{"type":"object","properties":{"element":{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atom Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]}},"required":["chemical_element"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacancy Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"allOf":[{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}],"default":"Vac"}},"required":["chemical_element"]}]}},"required":["element"]}]}]}},"merge_method":{"default":"ADD"},"passivant":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atom Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]}},"required":["chemical_element"]},"bond_length":{"type":"number","default":1,"description":"The bond length for the passivating atoms"}},"required":["merge_components","merge_method","passivant","bond_length"]},{"$id":"materials-category-components/entities/auxiliary/one-dimensional/miller-indices-2d","$schema":"http://json-schema.org/draft-07/schema#","title":"2D Miller Indices Schema","description":"The (u,v) Miller indices for the line direction","type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}},{"$id":"materials-category-components/entities/auxiliary/three-dimensional/supercell-matrix-3d","$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Matrix 3D Schema","description":"3x3 matrix of integers for transforming a unit cell into a supercell","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3,"default":[[1,0,0],[0,1,0],[0,0,1]]},{"$id":"materials-category-components/entities/auxiliary/two-dimensional/miller-indices","$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]},{"$id":"materials-category-components/entities/auxiliary/two-dimensional/supercell-matrix-2d","$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Matrix 2D Schema","description":"Supercell matrix for xy plane transformations","type":"array","items":{"type":"array","items":{"type":"integer"},"minItems":2,"maxItems":2},"minItems":2,"maxItems":2,"default":[[1,0],[0,1]]},{"$id":"materials-category-components/entities/auxiliary/two-dimensional/termination","$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},{"$id":"materials-category-components/entities/auxiliary/zero-dimensional/crystal-site","$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Site Schema","description":"A site in a crystal that can be populated with an atom, vacancy, or void. Should be place in a target basis.","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["crystal","coordinate"]},{"$id":"materials-category-components/entities/auxiliary/zero-dimensional/point-defect-site","$schema":"http://json-schema.org/draft-07/schema#","title":"Point Defect Site Schema","description":"A crystal site with defect information (atom or vacancy) for point defects","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Site Schema","description":"A site in a crystal that can be populated with an atom, vacancy, or void. Should be place in a target basis.","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["crystal","coordinate"]},{"type":"object","properties":{"element":{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atom Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]}},"required":["chemical_element"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacancy Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"allOf":[{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}],"default":"Vac"}},"required":["chemical_element"]}]}},"required":["element"]}]},{"$id":"materials-category-components/entities/auxiliary/zero-dimensional/void-region","$schema":"http://json-schema.org/draft-07/schema#","title":"Void Region Schema","description":"A void region that applies coordinate condition to a crystal or slab and creates a void region","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"coordinate_condition":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Conditions Schema","description":"Combined schema for all coordinate condition types","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Box Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"box","default":"box"},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["min_coordinate","max_coordinate"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"sphere","default":"sphere"},"radius":{"type":"number","minimum":0}},"required":["radius"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"cylinder","default":"cylinder"},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["radius","min_z","max_z"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"triangular_prism","default":"triangular_prism"},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["position_on_surface_1","position_on_surface_2","position_on_surface_3","min_z","max_z"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"plane","default":"plane"},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["plane_normal","plane_point_coordinate"]}]}},"required":["crystal","coordinate_condition"]},{"$id":"materials-category-components/entities/core/three-dimensional/crystal","$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},{"$id":"materials-category-components/entities/core/three-dimensional/void","$schema":"http://json-schema.org/draft-07/schema#","title":"Void Schema","description":"A void that can be placed into a crystal, removing all atoms inside","type":"object","properties":{"center_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Conditions Schema","description":"Combined schema for all coordinate condition types","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Box Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"box","default":"box"},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["min_coordinate","max_coordinate"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"sphere","default":"sphere"},"radius":{"type":"number","minimum":0}},"required":["radius"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"cylinder","default":"cylinder"},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["radius","min_z","max_z"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"triangular_prism","default":"triangular_prism"},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"min_z":{"type":"number"},"max_z":{"type":"number"}},"required":["position_on_surface_1","position_on_surface_2","position_on_surface_3","min_z","max_z"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Condition Schema","description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]}},"required":["shape"]}],"properties":{"shape":{"const":"plane","default":"plane"},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}},"required":["plane_normal","plane_point_coordinate"]}]}},"required":["center_coordinate","shape"]},{"$id":"materials-category-components/entities/core/two-dimensional/vacuum","$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]},{"$id":"materials-category-components/entities/core/zero-dimensional/atom","$schema":"http://json-schema.org/draft-07/schema#","title":"Atom Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]}},"required":["chemical_element"]},{"$id":"materials-category-components/entities/core/zero-dimensional/vacancy","$schema":"http://json-schema.org/draft-07/schema#","title":"Vacancy Schema","description":"A chemical element that can be placed at a crystal site","type":"object","properties":{"chemical_element":{"allOf":[{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}],"default":"Vac"}},"required":["chemical_element"]},{"$id":"materials-category-components/entities/reusable/one-dimensional/crystal-lattice-lines","$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Lines Schema","description":"A set of crystal lattice lines defined by 2D Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices_2d":{"$schema":"http://json-schema.org/draft-07/schema#","title":"2D Miller Indices Schema","description":"The (u,v) Miller indices for the line direction","type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"required":["miller_indices_2d"]},{"$id":"materials-category-components/entities/reusable/one-dimensional/crystal-lattice-lines-unique-repeated","$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Lines Unique Repeated Schema","description":"Crystal lattice lines unique with integer number of repetitions, forming a full periodic structure with terminations","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Lines Schema","description":"A set of crystal lattice lines defined by 2D Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices_2d":{"$schema":"http://json-schema.org/draft-07/schema#","title":"2D Miller Indices Schema","description":"The (u,v) Miller indices for the line direction","type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"required":["miller_indices_2d"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"termination_bottom":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions_width":{"type":"integer","minimum":1,"default":1,"description":"Number of repetitions in width direction"},"number_of_repetitions_length":{"type":"integer","minimum":1,"default":1,"description":"Number of repetitions in length direction"}},"required":["termination_top"]},{"$id":"materials-category-components/entities/reusable/three-dimensional/crystal-lattice-base","$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]},{"$id":"materials-category-components/entities/reusable/three-dimensional/repetitions","$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Repetitions Schema","description":"Number of unit cells to repeat in each direction for a crystal structure.","type":"array","items":{"type":"integer","minimum":1},"minItems":3,"maxItems":3,"default":[1,1,1]},{"$id":"materials-category-components/entities/reusable/three-dimensional/strained-non-uniform","$schema":"http://json-schema.org/draft-07/schema#","title":"Non-Uniformly Strained Crystal Configuration Schema","description":"A crystal structure with non-uniform strain applied using a strain matrix","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3}},"required":["crystal","strain_matrix"]},{"$id":"materials-category-components/entities/reusable/three-dimensional/strained-uniform","$schema":"http://json-schema.org/draft-07/schema#","title":"Uniformly Strained Crystal Configuration Schema","description":"A crystal structure with uniform strain applied","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"strain_percentage":{"type":"number","description":"Percentage of uniform strain to apply to the crystal structure"}},"required":["crystal","strain_percentage"]},{"$id":"materials-category-components/entities/reusable/three-dimensional/supercell","$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Configuration Schema","description":"A repeated crystal structure defined by a transformation matrix","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3}},"required":["crystal","matrix"]},{"$id":"materials-category-components/entities/reusable/two-dimensional/atomic-layers","$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Schema","description":"A set of atomic layers defined by a plane in a crystal structure with specific terminations","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Schema","description":"A set of unique atomic layers defined by a plane in a crystal structure, including all possible terminations","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"terminations":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"minItems":1,"description":"All possible terminations for this orientation."}},"required":["terminations"]}]},{"$id":"materials-category-components/entities/reusable/two-dimensional/atomic-layers-unique","$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Schema","description":"A set of unique atomic layers defined by a plane in a crystal structure, including all possible terminations","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"terminations":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"minItems":1,"description":"All possible terminations for this orientation."}},"required":["terminations"]},{"$id":"materials-category-components/entities/reusable/two-dimensional/atomic-layers-unique-repeated","$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$id":"materials-category-components/entities/reusable/two-dimensional/crystal-lattice-planes","$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]},{"$id":"materials-category-components/entities/reusable/two-dimensional/slab-stack-configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Stack Configuration Schema","description":"Base configuration for a slab stack with another component and vacuum in the z-direction.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":3,"maxItems":3,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Slab Configuration Schema","description":"A slab unit cell consisting of repeated unique atomic layers and vacuum.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]}],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":2,"items":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic Layers Unique Repeated Schema","description":"Atomic layers unique with an integer number of repetitions, forming a full periodic structure with top layer specified by the termination","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Planes Schema","description":"A set of all possible planes in a crystal defined by Miller indices","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Lattice Base Schema","description":"Base schema for crystal lattice structures defined by crystal and miller indices","type":"object","properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}},"required":["crystal"]}],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3}],"default":[0,0,1]}},"required":["miller_indices"]}],"properties":{"termination_top":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Termination Schema","description":"Defines a specific termination of a slab","type":"object","required":["chemical_elements","space_group_symmetry_label"],"properties":{"chemical_elements":{"title":"Chemical Elements","description":"Chemical elements at the termination. Can be a single element (e.g. 'Si') or a compound (e.g. 'SiO')","type":"string","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"type":"string","description":"A string representing a stoichiometric formula for surface atoms of a plane, e.g. 'SrTiO', 'SrO', 'O2' or 'Hf2O'","pattern":"^([A-Z][a-z]?[0-9]*)+$"}]},"space_group_symmetry_label":{"title":"Space Group Symmetry Label","description":"Space group symmetry designation for the termination","type":"string"}}},"number_of_repetitions":{"type":"integer","minimum":1,"description":"Number of repetitions of the unique atomic layers"}},"required":["termination_top","number_of_repetitions"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"type":"object"},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Vacuum Configuration Schema","description":"A vacuum slab that breaks periodicity in a specified direction","type":"object","properties":{"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"size":{"type":"number","description":"Size of the vacuum slab in angstroms","minimum":0,"default":10},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]}]}},"required":["direction","size","crystal"]}]},"direction":{"default":"z"}}},{"$id":"materials-category-components/operations/core/combinations/enums","$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]},{"$id":"materials-category-components/operations/core/combinations/merge","$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Schema","description":"A component of a stack, which can be a crystal or a vacuum","properties":{"merge_components":{"type":"array"},"merge_method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}},"required":["merge_components","merge_method"]},{"$id":"materials-category-components/operations/core/combinations/stack","$schema":"http://json-schema.org/draft-07/schema#","title":"Stack Schema","description":"A stack of components in a certain direction. The specific types of components should be defined by the inheriting schema.","type":"object","properties":{"stack_components":{"type":"array"},"direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"number"}}}}},"required":["stack_components","direction"]},{"$id":"materials-category-components/operations/core/modifications/perturb","$schema":"http://json-schema.org/draft-07/schema#","title":"Perturbation Schema","description":"A perturbation operation that modifies a configuration by applying a perturbation to atoms coordinates.","type":"object","properties":{"material":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material properties schema","description":"Domain-specific fields of a material entity, kept separate from generic in-memory-entity mixins (name, isDefault, etc.). Full entity schemas compose *_properties.json fragments via allOf (see material.json). The _properties filename suffix marks schemas that serve as the input for generated TypeScript entity mixins — MaterialSchemaMixin in @mat3ra/made, following the same pattern as ApplicationSchemaMixin in @mat3ra/ade (scripts/generate-mixins.ts and generateSchemaMixin in @mat3ra/code).","type":"object","properties":{"formula":{"description":"reduced chemical formula","type":"string"},"unitCellFormula":{"description":"chemical formula based on the number of atoms of each element in the supercell","type":"string"},"basis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},"derivedProperties":{"$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"third party sources","type":"object","properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}},"required":["source"]}]},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},"icsdId":{"description":"Corresponding ICSD id of the material","type":"integer"},"isNonPeriodic":{"description":"Whether to work in the finite molecular picture (usually with atomic orbital basis)","type":"boolean"},"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"material consistency check schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}],"properties":{"name":{"type":"string","enum":["default","atomsTooClose","atomsOverlap"],"description":"Name of the consistency check that is performed, which is listed in an enum."}}}}},"required":["basis","lattice"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","properties":{"metadata":{"type":"object","default":{},"additionalProperties":true,"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["type","offset"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","properties":{"isSlab":{"description":"Whether the material was created as a surface slab","type":"boolean"},"h":{"description":"Miller index h used to generate the slab","type":"number"},"k":{"description":"Miller index k used to generate the slab","type":"number"},"l":{"description":"Miller index l used to generate the slab","type":"number"},"thickness":{"description":"Slab thickness in number of layers","type":"number"},"vacuumRatio":{"description":"Vacuum fraction used when scaling the out-of-plane lattice vector","type":"number"},"vx":{"description":"Termination vector component along a","type":"number"},"vy":{"description":"Termination vector component along b","type":"number"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}},"additionalProperties":true}]}},"required":["metadata"]}]},"perturbation_function":{"type":"string","description":"A function that defines the perturbation (delta in coordinates) to be applied to the atomic coordinates."}}},{"$id":"materials-category-components/operations/core/modifications/repeat","$schema":"http://json-schema.org/draft-07/schema#","title":"Repeat Schema","properties":{"matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Supercell Matrix 3D Schema","description":"3x3 matrix of integers for transforming a unit cell into a supercell","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","items":{"type":"integer"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3,"default":[[1,0,0],[0,1,0],[0,0,1]]}}},{"$id":"materials-category-components/operations/core/modifications/strain","$schema":"http://json-schema.org/draft-07/schema#","title":"Strain Schema","properties":{"matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3}}},{"$id":"measurement/instrument","$schema":"http://json-schema.org/draft-07/schema#","title":"measurement instrument schema","description":"The machine a measurement was performed on and the sitting it belongs to: the experimental analogue of a job's compute. The technique is the workflow's application, not repeated here.","type":"object","properties":{"name":{"description":"Identity of the instrument, as a cluster's fqdn identifies a cluster","type":"string"},"description":{"description":"Vendor, model, serial and whatever else describes the machine","type":"object"},"session":{"description":"The sitting during which the measurement was taken","type":"object","properties":{"name":{"type":"string"},"started":{"type":"string","format":"date-time"},"finished":{"type":"string","format":"date-time"},"operator":{"type":"string"},"directory":{"description":"Where the instrument wrote its raw data","type":"string"}}},"settings":{"description":"Instrument parameters as set for this measurement","type":"object"},"environment":{"description":"Conditions during the measurement: temperature, pressure, atmosphere","type":"object"},"registration":{"description":"How the instrument frame maps onto the sample: frame, anchor, coordinates","type":"object"}},"required":["name"]},{"$id":"measurement/set","$schema":"http://json-schema.org/draft-07/schema#","title":"measurement set schema","description":"A run: the measurements of one sitting, performed on one specimen (a sample set).","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Entity set schema","type":"object","properties":{"isEntitySet":{"type":"boolean"},"entitySetType":{"type":"string"},"entityCls":{"type":"string"}}}],"properties":{"_sampleSet":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}}},{"$id":"measurement","$schema":"http://json-schema.org/draft-07/schema#","title":"measurement schema","description":"One procedure applied to one sample by an instrument, recorded once finished: the experimental analogue of a job.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable has metadata in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}}]}],"properties":{"_sample":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]},"workflow":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"base workflow schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this workflow (TODO: add enums)","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"isUsingDataset":{"description":"Whether to use the dataset tab in the job designer. Mutually exclusive with using the materials tab.","type":"boolean"},"isMultiMaterial":{"description":"Defines whether the workflow is for a multi-material simulation","type":"boolean"},"subworkflows":{"description":"Array of subworkflows. Subworkflow can be an instance of workflow to allow for nesting","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Mixin Schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this subworkflow","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]},"units":{"description":"Contains the Units of the subworkflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow subworkflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","properties":{"type":{"const":"io"},"subtype":{"enum":["input","output","dataFrame"]},"source":{"enum":["api","object_storage"]},"input":{"type":"array","items":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]}],"discriminator":{"propertyName":"type"}}}},"required":["subtype","source","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","properties":{"type":{"const":"condition"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"statement":{"description":"Condition statement. e.g. 'abs(x-total_energy) < 1e-5'","type":"string"},"then":{"description":"Flowchart ID reference for `then` part of the condition.","type":"string"},"else":{"description":"Flowchart ID reference for `else` part of the condition.","type":"string"},"maxOccurrences":{"description":"Maximum occurrence of the condition, usable for loops.","type":"integer"},"throwException":{"description":"Throw exception on reaching to maximum occurence.","type":"boolean"}},"required":["input","statement","then","else","maxOccurrences"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","properties":{"type":{"const":"assertion"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}},"required":["name","statement"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"scope schema","type":"object","properties":{"scope":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","properties":{"type":{"const":"assignment"},"input":{"description":"Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"operand":{"description":"Name of the global variable. e.g. 'x'","type":"string"},"value":{"description":"Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}},"required":["name","operand","value"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"model":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Any model schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"lda"},"functional":{"enum":["pz","pw","vwn","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"gga"},"functional":{"enum":["pbe","pbesol","pw91","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"hybrid"},"functional":{"enum":["b3lyp","hse06","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML model schema","type":"object","properties":{"type":{"enum":["ml"]},"subtype":{"enum":["re"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unknown model schema","type":"object","properties":{"type":{"enum":["unknown"]},"subtype":{"enum":["unknown"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}},"required":["model","properties","application","units"]}]}},"units":{"description":"Contains the Units of the Workflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit mixin schema","type":"object","properties":{"type":{"const":"map"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","properties":{"target":{"description":"Name of the target variable to substitute using the values below. e.g. K_POINTS","type":"string"},"scope":{"description":"Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.","type":"string"},"name":{"description":"Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.","type":"string"},"values":{"description":"Sequence of values for the target Jinja variable. Optional if `scope` and `name` are given. This can be used for map-reduce type parallel execution","type":"array","items":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"object"}]}},"useValues":{"type":"boolean"}},"required":["target"]}},"required":["input","workflowId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit mixin schema","type":"object","properties":{"type":{"const":"reduce"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","properties":{"operation":{"description":"reduce operation, e.g. aggregate","type":"string"},"arguments":{"description":"arguments which are passed to reduce operation function","type":"array","items":{"type":"string"}}},"required":["operation","arguments"]}}},"required":["mapFlowchartId","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"application":{"description":"information about the main application used for workflow categorization by application in standata.","type":"object","properties":{"name":{"description":"name of the application","type":"string"}}},"tags":{"description":"tags for the workflow","type":"array","items":{"type":"string"}}},"required":["properties","units","subworkflows"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Description schema","type":"object","properties":{"description":{"description":"entity description","type":"string"},"descriptionObject":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"workflows":{"description":"Array of workflows with the same schema as the current one.","type":"array","items":{"type":"object"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]}},"required":["workflows"]},"instrument":{"$schema":"http://json-schema.org/draft-07/schema#","title":"measurement instrument schema","description":"The machine a measurement was performed on and the sitting it belongs to: the experimental analogue of a job's compute. The technique is the workflow's application, not repeated here.","type":"object","properties":{"name":{"description":"Identity of the instrument, as a cluster's fqdn identifies a cluster","type":"string"},"description":{"description":"Vendor, model, serial and whatever else describes the machine","type":"object"},"session":{"description":"The sitting during which the measurement was taken","type":"object","properties":{"name":{"type":"string"},"started":{"type":"string","format":"date-time"},"finished":{"type":"string","format":"date-time"},"operator":{"type":"string"},"directory":{"description":"Where the instrument wrote its raw data","type":"string"}}},"settings":{"description":"Instrument parameters as set for this measurement","type":"object"},"environment":{"description":"Conditions during the measurement: temperature, pressure, atmosphere","type":"object"},"registration":{"description":"How the instrument frame maps onto the sample: frame, anchor, coordinates","type":"object"}},"required":["name"]},"status":{"type":"string","description":"Status of the measurement; finished when it reaches the platform","allOf":[{"description":"job status","enum":["pre-submission","queued","submitted","active","finished","terminate-queued","terminated","error","deleted","timeout"]}]}},"required":["_sample","workflow","instrument","status"]},{"$id":"method/categorized-method","$schema":"http://json-schema.org/draft-07/schema#","title":"categorized method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"units":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}}},"required":["units"]},{"$id":"method/method-parameters","$schema":"http://json-schema.org/draft-07/schema#","title":"MethodParameters","allOf":[{"oneOf":[{"type":"object","properties":{"basisSlug":{"enum":["cc-pvdz","cc-pvtz","cc-pvqz"]}}},{"type":"object","properties":{"basisSlug":{"enum":["3-21G","6-31G","6-311G"]}}},{"type":"object","properties":{"basisSlug":{"enum":["sto-3g","sto-4g","sto-6g","def2-svp","def2-tzvp","def2-qzvp","cbs-qb3"]}}}]}]},{"$id":"method/unit-method","$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}},{"$id":"method","$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]},{"$id":"methods-category/mathematical/diff/enum-options","finiteDifference":{"enum":["fd"]}},{"$id":"methods-category/mathematical/diff/fd","$schema":"http://json-schema.org/draft-07/schema#","title":"Finite difference method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Numerical differentiation category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["diff"]}}}],"properties":{"tier2":{"enum":["fd"]}}},{"$id":"methods-category/mathematical/diff","$schema":"http://json-schema.org/draft-07/schema#","title":"Numerical differentiation category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["diff"]}}},{"$id":"methods-category/mathematical/discr/enum-options","meshing":{"enum":["mesh"]}},{"$id":"methods-category/mathematical/discr/mesh/enum-options","hybridMesh":{"enum":["hybrid"]},"unstructuredMesh":{"enum":["nstruct"]},"structuredMesh":{"enum":["struct"]}},{"$id":"methods-category/mathematical/discr/mesh/hybrid","$schema":"http://json-schema.org/draft-07/schema#","title":"Hybrid meshing category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Meshing method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Discretization category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["discr"]}}}],"properties":{"tier2":{"enum":["mesh"]}}}],"properties":{"tier3":{"enum":["hybrid"]}}},{"$id":"methods-category/mathematical/discr/mesh/nstruct","$schema":"http://json-schema.org/draft-07/schema#","title":"Unstructured meshing category nstruct schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Meshing method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Discretization category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["discr"]}}}],"properties":{"tier2":{"enum":["mesh"]}}}],"properties":{"tier3":{"enum":["nstruct"]}}},{"$id":"methods-category/mathematical/discr/mesh/struct/cartesian","$schema":"http://json-schema.org/draft-07/schema#","title":"Cartesian grid schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Structured meshing category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Meshing method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Discretization category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["discr"]}}}],"properties":{"tier2":{"enum":["mesh"]}}}],"properties":{"tier3":{"enum":["struct"]}}}],"properties":{"type":{"enum":["cartesian"]}}},{"$id":"methods-category/mathematical/discr/mesh/struct/enum-options","cartesian":{"enum":["cartesian"]}},{"$id":"methods-category/mathematical/discr/mesh/struct","$schema":"http://json-schema.org/draft-07/schema#","title":"Structured meshing category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Meshing method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Discretization category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["discr"]}}}],"properties":{"tier2":{"enum":["mesh"]}}}],"properties":{"tier3":{"enum":["struct"]}}},{"$id":"methods-category/mathematical/discr/mesh","$schema":"http://json-schema.org/draft-07/schema#","title":"Meshing method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Discretization category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["discr"]}}}],"properties":{"tier2":{"enum":["mesh"]}}},{"$id":"methods-category/mathematical/discr","$schema":"http://json-schema.org/draft-07/schema#","title":"Discretization category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["discr"]}}},{"$id":"methods-category/mathematical/enum-options","differentiation":{"enum":["diff"]},"discretization":{"enum":["discr"]},"functionApproximation":{"enum":["fapprx"]},"integration":{"enum":["intgr"]},"linearAlgebra":{"enum":["linalg"]},"optimization":{"enum":["opt"]},"regressionTypes":{"enum":["linear","kernel_ridge"]},"regressionSubtypes":{"enum":["least_squares","ridge"]}},{"$id":"methods-category/mathematical/fapprx/basisexp","$schema":"http://json-schema.org/draft-07/schema#","title":"Basis expansion category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unstructured meshing category fapprx schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["fapprx"]}}}],"properties":{"tier2":{"enum":["basisExp"]}}},{"$id":"methods-category/mathematical/fapprx/enum-options","basisExpansion":{"enum":["basisExp"]},"interpolation":{"enum":["ipol"]}},{"$id":"methods-category/mathematical/fapprx/ipol/enum-options","linear":{"enum":["lin"]},"polynomial":{"enum":["poly"]},"spline":{"enum":["spline"]}},{"$id":"methods-category/mathematical/fapprx/ipol/lin","$schema":"http://json-schema.org/draft-07/schema#","title":"Linear interpolation category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Interpolation category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unstructured meshing category fapprx schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["fapprx"]}}}],"properties":{"tier2":{"enum":["ipol"]}}}],"properties":{"tier3":{"enum":["lin"]}}},{"$id":"methods-category/mathematical/fapprx/ipol/poly","$schema":"http://json-schema.org/draft-07/schema#","title":"Polynomial interpolation category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Interpolation category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unstructured meshing category fapprx schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["fapprx"]}}}],"properties":{"tier2":{"enum":["ipol"]}}}],"properties":{"tier3":{"enum":["poly"]}}},{"$id":"methods-category/mathematical/fapprx/ipol/spline","$schema":"http://json-schema.org/draft-07/schema#","title":"Spline interpolation category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Interpolation category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unstructured meshing category fapprx schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["fapprx"]}}}],"properties":{"tier2":{"enum":["ipol"]}}}],"properties":{"tier3":{"enum":["spline"]}}},{"$id":"methods-category/mathematical/fapprx/ipol","$schema":"http://json-schema.org/draft-07/schema#","title":"Interpolation category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unstructured meshing category fapprx schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["fapprx"]}}}],"properties":{"tier2":{"enum":["ipol"]}}},{"$id":"methods-category/mathematical/fapprx","$schema":"http://json-schema.org/draft-07/schema#","title":"Unstructured meshing category fapprx schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["fapprx"]}}},{"$id":"methods-category/mathematical/intgr/analytic/enum-options","volume":{"enum":["volume"]},"volumeSubtypes":{"enum":["sphere","cube","rect-prism","tri-prism","cylinder","cone","tetrahedron","sq-pyr"]}},{"$id":"methods-category/mathematical/intgr/analytic/volume","$schema":"http://json-schema.org/draft-07/schema#","title":"Analytic volume integral category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Analytic integral category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}}],"properties":{"tier2":{"enum":["analytic"]}}}],"properties":{"type":{"enum":["volume"]},"subtype":{"enum":["sphere","cube","rect-prism","tri-prism","cylinder","cone","tetrahedron","sq-pyr"]}}},{"$id":"methods-category/mathematical/intgr/analytic","$schema":"http://json-schema.org/draft-07/schema#","title":"Analytic integral category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}}],"properties":{"tier2":{"enum":["analytic"]}}},{"$id":"methods-category/mathematical/intgr/diffeq/enum-options","firstOrder":{"enum":["order1"]},"secondOrder":{"enum":["order2"]}},{"$id":"methods-category/mathematical/intgr/diffeq/order1","$schema":"http://json-schema.org/draft-07/schema#","description":"Categories for the numerical integration of differential equations","type":"object","title":"Order1 schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods for the numerical integration of differential equations schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}}],"properties":{"tier2":{"enum":["diffeq"]}}}],"properties":{"tier3":{"enum":["order1"]}}},{"$id":"methods-category/mathematical/intgr/diffeq/order2","$schema":"http://json-schema.org/draft-07/schema#","description":"Categories for the numerical integration of differential equations","type":"object","title":"Order2 schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods for the numerical integration of differential equations schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}}],"properties":{"tier2":{"enum":["diffeq"]}}}],"properties":{"tier3":{"enum":["order2"]}}},{"$id":"methods-category/mathematical/intgr/diffeq","$schema":"http://json-schema.org/draft-07/schema#","title":"Methods for the numerical integration of differential equations schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}}],"properties":{"tier2":{"enum":["diffeq"]}}},{"$id":"methods-category/mathematical/intgr/enum-options","analytic":{"enum":["analytic"]},"differentialEquation":{"enum":["diffeq"]},"numericalQuadrature":{"enum":["numquad"]},"transformation":{"enum":["transf"]}},{"$id":"methods-category/mathematical/intgr/numquad/enum-options","gaussQuadrature":{"enum":["gauss"]},"newtonCotes":{"enum":["newcot"]}},{"$id":"methods-category/mathematical/intgr/numquad/gauss","$schema":"http://json-schema.org/draft-07/schema#","title":"Gaussian quadrature rules schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods for the numerical quadrature schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}}],"properties":{"tier2":{"enum":["numquad"]}}}],"properties":{"tier3":{"enum":["gauss"]}}},{"$id":"methods-category/mathematical/intgr/numquad/newcot","$schema":"http://json-schema.org/draft-07/schema#","title":"Newton-Cotes quadrature rules schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods for the numerical quadrature schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}}],"properties":{"tier2":{"enum":["numquad"]}}}],"properties":{"tier3":{"enum":["newcot"]}}},{"$id":"methods-category/mathematical/intgr/numquad","$schema":"http://json-schema.org/draft-07/schema#","title":"Methods for the numerical quadrature schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}}],"properties":{"tier2":{"enum":["numquad"]}}},{"$id":"methods-category/mathematical/intgr/transf/enum-options","fourierTransformation":{"enum":["fourier"]}},{"$id":"methods-category/mathematical/intgr/transf/fourier","$schema":"http://json-schema.org/draft-07/schema#","description":"Fourier transform methods","title":"Fourier transform methods schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","description":"Integral transform methods","title":"Integral transform methods schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}}],"properties":{"tier2":{"enum":["transf"]}}}],"properties":{"type":{"enum":["fourier"]}}},{"$id":"methods-category/mathematical/intgr/transf","$schema":"http://json-schema.org/draft-07/schema#","description":"Integral transform methods","title":"Integral transform methods schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}}],"properties":{"tier2":{"enum":["transf"]}}},{"$id":"methods-category/mathematical/intgr","$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["intgr"]}}},{"$id":"methods-category/mathematical/linalg/dcomp","$schema":"http://json-schema.org/draft-07/schema#","title":"Matrix decomposition methods schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Linear Algebra category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["linalg"]}}}],"properties":{"tier2":{"enum":["dcomp"]}}},{"$id":"methods-category/mathematical/linalg/diag/davidson","$schema":"http://json-schema.org/draft-07/schema#","title":"Davidson diagonalization method schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Matrix diagonalization methods schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Linear Algebra category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["linalg"]}}}],"properties":{"tier2":{"enum":["diag"]}}}],"properties":{"type":{"enum":["davidson"]}}},{"$id":"methods-category/mathematical/linalg/diag/enum-options","davidson":{"enum":["davidson"]}},{"$id":"methods-category/mathematical/linalg/diag","$schema":"http://json-schema.org/draft-07/schema#","title":"Matrix diagonalization methods schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Linear Algebra category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["linalg"]}}}],"properties":{"tier2":{"enum":["diag"]}}},{"$id":"methods-category/mathematical/linalg/enum-options","decomposition":{"enum":["dcomp"]},"diagonalization":{"enum":["diag"]},"linearTransformation":{"enum":["lintra"]},"matrixFunction":{"enum":["matf"]}},{"$id":"methods-category/mathematical/linalg/lintra","$schema":"http://json-schema.org/draft-07/schema#","title":"Linear transformation methods schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Linear Algebra category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["linalg"]}}}],"properties":{"tier2":{"enum":["lintra"]}}},{"$id":"methods-category/mathematical/linalg/matf","$schema":"http://json-schema.org/draft-07/schema#","title":"Matrix function methods schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Linear Algebra category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["linalg"]}}}],"properties":{"tier2":{"enum":["matf"]}}},{"$id":"methods-category/mathematical/linalg","$schema":"http://json-schema.org/draft-07/schema#","title":"Linear Algebra category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["linalg"]}}},{"$id":"methods-category/mathematical/opt/diff/bracket","$schema":"http://json-schema.org/draft-07/schema#","title":"Bracket algorithms for the optimization of differentiable functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["diff"]}}}],"properties":{"tier3":{"enum":["bracket"]}}},{"$id":"methods-category/mathematical/opt/diff/enum-options","bracketing":{"enum":["bracket"]},"localDescent":{"enum":["local"]},"firstOrder":{"enum":["order1"]},"secondOrder":{"enum":["order2"]},"nOrder":{"enum":["ordern"]}},{"$id":"methods-category/mathematical/opt/diff/local","$schema":"http://json-schema.org/draft-07/schema#","title":"Local descent methods for the optimization of differentiable functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["diff"]}}}],"properties":{"tier3":{"enum":["local"]}}},{"$id":"methods-category/mathematical/opt/diff/order1","$schema":"http://json-schema.org/draft-07/schema#","title":"First order algorithms for the optimization of differentiable functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["diff"]}}}],"properties":{"tier3":{"enum":["order1"]}}},{"$id":"methods-category/mathematical/opt/diff/order2","$schema":"http://json-schema.org/draft-07/schema#","title":"Second order algorithms for the optimization of differentiable functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["diff"]}}}],"properties":{"tier3":{"enum":["order2"]}}},{"$id":"methods-category/mathematical/opt/diff/ordern/cg","$schema":"http://json-schema.org/draft-07/schema#","title":"Conjugate gradient method schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mixed order and higher order algorithms for the optimization of differentiable functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["diff"]}}}],"properties":{"tier3":{"enum":["ordern"]}}}],"properties":{"type":{"enum":["cg"]}}},{"$id":"methods-category/mathematical/opt/diff/ordern/enum-options","conjugateGradient":{"enum":["cg"]}},{"$id":"methods-category/mathematical/opt/diff/ordern","$schema":"http://json-schema.org/draft-07/schema#","title":"Mixed order and higher order algorithms for the optimization of differentiable functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["diff"]}}}],"properties":{"tier3":{"enum":["ordern"]}}},{"$id":"methods-category/mathematical/opt/diff","$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["diff"]}}},{"$id":"methods-category/mathematical/opt/enum-options","differentiable":{"enum":["diff"]},"nonDifferentiable":{"enum":["ndiff"]},"rootFinding":{"enum":["root"]}},{"$id":"methods-category/mathematical/opt/ndiff/direct","$schema":"http://json-schema.org/draft-07/schema#","title":"Direct algorithms for the optimization of non-differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for non-differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["ndiff"]}}}],"properties":{"tier3":{"enum":["direct"]}}},{"$id":"methods-category/mathematical/opt/ndiff/enum-options","direct":{"enum":["direct"]},"population":{"enum":["pop"]},"stochastic":{"enum":["stoch"]}},{"$id":"methods-category/mathematical/opt/ndiff/pop","$schema":"http://json-schema.org/draft-07/schema#","title":"Population algorithms for the optmization of non-differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for non-differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["ndiff"]}}}],"properties":{"tier3":{"enum":["pop"]}}},{"$id":"methods-category/mathematical/opt/ndiff/stoch","$schema":"http://json-schema.org/draft-07/schema#","title":"Stochastic algorithms for the optmization of non-differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for non-differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["ndiff"]}}}],"properties":{"tier3":{"enum":["stoch"]}}},{"$id":"methods-category/mathematical/opt/ndiff","$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for non-differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["ndiff"]}}},{"$id":"methods-category/mathematical/opt/root/bracket","$schema":"http://json-schema.org/draft-07/schema#","title":"Bracketing method for finding roots category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Root finding category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["root"]}}}],"properties":{"tier3":{"enum":["bracket"]}}},{"$id":"methods-category/mathematical/opt/root/enum-options","iterative":{"enum":["iterative"]},"bracketing":{"enum":["bracket"]}},{"$id":"methods-category/mathematical/opt/root/iter","$schema":"http://json-schema.org/draft-07/schema#","title":"Iterative method for root finding category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Root finding category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["root"]}}}],"properties":{"tier3":{"enum":["iterative"]}}},{"$id":"methods-category/mathematical/opt/root","$schema":"http://json-schema.org/draft-07/schema#","title":"Root finding category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["root"]}}},{"$id":"methods-category/mathematical/opt","$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}},{"$id":"methods-category/mathematical/regression","$schema":"http://json-schema.org/draft-07/schema#","title":"linear methods category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"type":{"enum":["linear","kernel_ridge"]},"subtype":{"enum":["least_squares","ridge"]}}},{"$id":"methods-category/physical/enum-options","quantumMechanical":{"enum":["qm"]}},{"$id":"methods-category/physical/qm/enum-options","wavefunction":{"enum":["wf"]}},{"$id":"methods-category/physical/qm/wf/ao/dunning","$schema":"http://json-schema.org/draft-07/schema#","title":"Dunning correlation-consistent basis set category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Approximating the electronic wave function with a atomic orbital basis schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["ao"]},"subtype":{"enum":["pople","dunning","other"]}}}],"properties":{"subtype":{"enum":["dunning"]}}},{"$id":"methods-category/physical/qm/wf/ao/other","$schema":"http://json-schema.org/draft-07/schema#","title":"Other (neither Pople nor Dunning) basis set category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Approximating the electronic wave function with a atomic orbital basis schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["ao"]},"subtype":{"enum":["pople","dunning","other"]}}}],"properties":{"subtype":{"enum":["other"]}}},{"$id":"methods-category/physical/qm/wf/ao/pople","$schema":"http://json-schema.org/draft-07/schema#","title":"Pople basis set category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Approximating the electronic wave function with a atomic orbital basis schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["ao"]},"subtype":{"enum":["pople","dunning","other"]}}}],"properties":{"subtype":{"enum":["pople"]}}},{"$id":"methods-category/physical/qm/wf/ao","$schema":"http://json-schema.org/draft-07/schema#","title":"Approximating the electronic wave function with a atomic orbital basis schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["ao"]},"subtype":{"enum":["pople","dunning","other"]}}},{"$id":"methods-category/physical/qm/wf/enum-options","planewave":{"enum":["pw"]},"atomicOrbital":{"enum":["ao"]},"wavelet":{"enum":["wvl"]},"smearing":{"enum":["smearing"]},"tetrahedron":{"enum":["tetrahedron"]},"pseudization":{"enum":["psp"]},"pseudoSubtypes":{"enum":["us","nc","nc-fr","paw","coulomb"]},"smearingSubtypes":{"enum":["gaussian","marzari-vanderbilt","methfessel-paxton","fermi-dirac"]},"tetrahedronSubtypes":{"enum":["linear","optimized","bloechl"]},"aoTypes":{"enum":["pople","dunning","other"]}},{"$id":"methods-category/physical/qm/wf/psp","$schema":"http://json-schema.org/draft-07/schema#","title":"Pseudopotential category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["psp"]},"subtype":{"enum":["us","nc","nc-fr","paw","coulomb"]}}},{"$id":"methods-category/physical/qm/wf/pw","$schema":"http://json-schema.org/draft-07/schema#","title":"Plane wave catgeory schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["pw"]}}},{"$id":"methods-category/physical/qm/wf/smearing","$schema":"http://json-schema.org/draft-07/schema#","title":"Smearing methods category schema","description":"Approximating Heaviside step function with smooth function","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["smearing"]},"subtype":{"enum":["gaussian","marzari-vanderbilt","methfessel-paxton","fermi-dirac"]}}},{"$id":"methods-category/physical/qm/wf/tetrahedron","$schema":"http://json-schema.org/draft-07/schema#","title":"Tetrahedron method for Brillouin zone integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["tetrahedron"]},"subtype":{"enum":["linear","optimized","bloechl"]}}},{"$id":"methods-category/physical/qm/wf","$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}},{"$id":"methods-category/physical/qm","$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}},{"$id":"methods-directory/legacy/localorbital","$schema":"http://json-schema.org/draft-07/schema#","title":"legacy method localorbital","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}],"properties":{"type":{"const":"localorbital"},"subtype":{"const":"pople"}}},{"$id":"methods-directory/legacy/pseudopotential","$schema":"http://json-schema.org/draft-07/schema#","title":"legacy method pseudopotential","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}],"properties":{"type":{"const":"pseudopotential"},"subtype":{"enum":["paw","nc","us","any"],"default":"us"}}},{"$id":"methods-directory/legacy/regression","$schema":"http://json-schema.org/draft-07/schema#","title":"legacy method regression","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}],"properties":{"type":{"enum":["linear","kernel_ridge"]},"subtype":{"enum":["least_squares","ridge"]},"precision":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision","type":"object","properties":{"perProperty":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision per property schema","type":"object","properties":{"name":{"description":"property name in 'flattened' format","type":"string"},"trainingError":{"description":"training error of the estimator","type":"number"},"score":{"description":"prediction score of the estimator. Eg: r2_score","type":"number"}},"required":["trainingError"]}}}},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression data","type":"object","properties":{"perProperty":{"type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"linear regression parameters schema","type":"object","properties":{"intercept":{"description":"intercept (shift) from the linear or non-linear fit of data points","type":"number"},"perFeature":{"type":"array","description":"per-feature (property used for training the ML method/model) parameters","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"per-feature (property used for training the ML method/model) parameters schema","type":"object","properties":{"coefficient":{"description":"coefficient in linear regression","type":"number"},"name":{"description":"feature name","type":"string"},"importance":{"description":"pvalue: https://en.wikipedia.org/wiki/P-value","type":"number"}},"required":["name"]}}},"required":["intercept","perFeature"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"kernel-ridge regression parameters schema","type":"object","properties":{"xFit":{"description":"training data","type":"array"},"dualCoefficients":{"description":"dual coefficients","type":"array"},"perFeature":{"type":"array","description":"per-feature (property used for training the ML method/model) parameters","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"per-feature (property used for training the ML method/model) parameters schema","type":"object","properties":{"coefficient":{"description":"coefficient in linear regression","type":"number"},"name":{"description":"feature name","type":"string"},"importance":{"description":"pvalue: https://en.wikipedia.org/wiki/P-value","type":"number"}},"required":["name"]}}},"required":["xFit","dualCoefficients","perFeature"]}]}},"dataSet":{"$schema":"http://json-schema.org/draft-07/schema#","description":"dataset for ml","type":"object","properties":{"exabyteIds":{"description":"array of exabyteIds for materials in dataset","type":"array","items":{"type":"string"}},"extra":{"description":"holder for any extra information, eg. coming from user-uploaded CSV file"}},"required":["exabyteIds"]}}}},"required":["precision","data"]},{"$id":"methods-directory/legacy/unknown","$schema":"http://json-schema.org/draft-07/schema#","title":"legacy method unknown","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}],"properties":{"type":{"const":"unknown"},"subtype":{"const":"unknown"}}},{"$id":"methods-directory/mathematical/cg","$schema":"http://json-schema.org/draft-07/schema#","title":"Unit method conjugate gradient","description":"conjugate gradient method schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Conjugate gradient method schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mixed order and higher order algorithms for the optimization of differentiable functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for differentiable functions category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["opt"]}}}],"properties":{"tier2":{"enum":["diff"]}}}],"properties":{"tier3":{"enum":["ordern"]}}}],"properties":{"type":{"enum":["cg"]}}}},"required":["categories"]},{"$id":"methods-directory/mathematical/davidson","$schema":"http://json-schema.org/draft-07/schema#","title":"Unit method davidson schema","description":"Davidson diagonalization method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Davidson diagonalization method schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Matrix diagonalization methods schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Linear Algebra category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["linalg"]}}}],"properties":{"tier2":{"enum":["diag"]}}}],"properties":{"type":{"enum":["davidson"]}}}},"required":["categories"]},{"$id":"methods-directory/mathematical/regression/data","$schema":"http://json-schema.org/draft-07/schema#","title":"regression data","type":"object","properties":{"perProperty":{"type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"linear regression parameters schema","type":"object","properties":{"intercept":{"description":"intercept (shift) from the linear or non-linear fit of data points","type":"number"},"perFeature":{"type":"array","description":"per-feature (property used for training the ML method/model) parameters","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"per-feature (property used for training the ML method/model) parameters schema","type":"object","properties":{"coefficient":{"description":"coefficient in linear regression","type":"number"},"name":{"description":"feature name","type":"string"},"importance":{"description":"pvalue: https://en.wikipedia.org/wiki/P-value","type":"number"}},"required":["name"]}}},"required":["intercept","perFeature"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"kernel-ridge regression parameters schema","type":"object","properties":{"xFit":{"description":"training data","type":"array"},"dualCoefficients":{"description":"dual coefficients","type":"array"},"perFeature":{"type":"array","description":"per-feature (property used for training the ML method/model) parameters","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"per-feature (property used for training the ML method/model) parameters schema","type":"object","properties":{"coefficient":{"description":"coefficient in linear regression","type":"number"},"name":{"description":"feature name","type":"string"},"importance":{"description":"pvalue: https://en.wikipedia.org/wiki/P-value","type":"number"}},"required":["name"]}}},"required":["xFit","dualCoefficients","perFeature"]}]}},"dataSet":{"$schema":"http://json-schema.org/draft-07/schema#","description":"dataset for ml","type":"object","properties":{"exabyteIds":{"description":"array of exabyteIds for materials in dataset","type":"array","items":{"type":"string"}},"extra":{"description":"holder for any extra information, eg. coming from user-uploaded CSV file"}},"required":["exabyteIds"]}}},{"$id":"methods-directory/mathematical/regression/dataset","$schema":"http://json-schema.org/draft-07/schema#","description":"dataset for ml","type":"object","properties":{"exabyteIds":{"description":"array of exabyteIds for materials in dataset","type":"array","items":{"type":"string"}},"extra":{"description":"holder for any extra information, eg. coming from user-uploaded CSV file"}},"required":["exabyteIds"]},{"$id":"methods-directory/mathematical/regression/kernel-ridge/data-per-property","$schema":"http://json-schema.org/draft-07/schema#","title":"kernel-ridge regression parameters schema","type":"object","properties":{"xFit":{"description":"training data","type":"array"},"dualCoefficients":{"description":"dual coefficients","type":"array"},"perFeature":{"type":"array","description":"per-feature (property used for training the ML method/model) parameters","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"per-feature (property used for training the ML method/model) parameters schema","type":"object","properties":{"coefficient":{"description":"coefficient in linear regression","type":"number"},"name":{"description":"feature name","type":"string"},"importance":{"description":"pvalue: https://en.wikipedia.org/wiki/P-value","type":"number"}},"required":["name"]}}},"required":["xFit","dualCoefficients","perFeature"]},{"$id":"methods-directory/mathematical/regression/linear/data-per-property","$schema":"http://json-schema.org/draft-07/schema#","title":"linear regression parameters schema","type":"object","properties":{"intercept":{"description":"intercept (shift) from the linear or non-linear fit of data points","type":"number"},"perFeature":{"type":"array","description":"per-feature (property used for training the ML method/model) parameters","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"per-feature (property used for training the ML method/model) parameters schema","type":"object","properties":{"coefficient":{"description":"coefficient in linear regression","type":"number"},"name":{"description":"feature name","type":"string"},"importance":{"description":"pvalue: https://en.wikipedia.org/wiki/P-value","type":"number"}},"required":["name"]}}},"required":["intercept","perFeature"]},{"$id":"methods-directory/mathematical/regression/per-feature-item","$schema":"http://json-schema.org/draft-07/schema#","title":"per-feature (property used for training the ML method/model) parameters schema","type":"object","properties":{"coefficient":{"description":"coefficient in linear regression","type":"number"},"name":{"description":"feature name","type":"string"},"importance":{"description":"pvalue: https://en.wikipedia.org/wiki/P-value","type":"number"}},"required":["name"]},{"$id":"methods-directory/mathematical/regression/precision","$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision","type":"object","properties":{"perProperty":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision per property schema","type":"object","properties":{"name":{"description":"property name in 'flattened' format","type":"string"},"trainingError":{"description":"training error of the estimator","type":"number"},"score":{"description":"prediction score of the estimator. Eg: r2_score","type":"number"}},"required":["trainingError"]}}}},{"$id":"methods-directory/mathematical/regression/precision-per-property","$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision per property schema","type":"object","properties":{"name":{"description":"property name in 'flattened' format","type":"string"},"trainingError":{"description":"training error of the estimator","type":"number"},"score":{"description":"prediction score of the estimator. Eg: r2_score","type":"number"}},"required":["trainingError"]},{"$id":"methods-directory/mathematical/regression","$schema":"http://json-schema.org/draft-07/schema#","title":"unit method regression","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"linear methods category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"type":{"enum":["linear","kernel_ridge"]},"subtype":{"enum":["least_squares","ridge"]}}},"precision":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision","type":"object","properties":{"perProperty":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision per property schema","type":"object","properties":{"name":{"description":"property name in 'flattened' format","type":"string"},"trainingError":{"description":"training error of the estimator","type":"number"},"score":{"description":"prediction score of the estimator. Eg: r2_score","type":"number"}},"required":["trainingError"]}}}},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression data","type":"object","properties":{"perProperty":{"type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"linear regression parameters schema","type":"object","properties":{"intercept":{"description":"intercept (shift) from the linear or non-linear fit of data points","type":"number"},"perFeature":{"type":"array","description":"per-feature (property used for training the ML method/model) parameters","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"per-feature (property used for training the ML method/model) parameters schema","type":"object","properties":{"coefficient":{"description":"coefficient in linear regression","type":"number"},"name":{"description":"feature name","type":"string"},"importance":{"description":"pvalue: https://en.wikipedia.org/wiki/P-value","type":"number"}},"required":["name"]}}},"required":["intercept","perFeature"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"kernel-ridge regression parameters schema","type":"object","properties":{"xFit":{"description":"training data","type":"array"},"dualCoefficients":{"description":"dual coefficients","type":"array"},"perFeature":{"type":"array","description":"per-feature (property used for training the ML method/model) parameters","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"per-feature (property used for training the ML method/model) parameters schema","type":"object","properties":{"coefficient":{"description":"coefficient in linear regression","type":"number"},"name":{"description":"feature name","type":"string"},"importance":{"description":"pvalue: https://en.wikipedia.org/wiki/P-value","type":"number"}},"required":["name"]}}},"required":["xFit","dualCoefficients","perFeature"]}]}},"dataSet":{"$schema":"http://json-schema.org/draft-07/schema#","description":"dataset for ml","type":"object","properties":{"exabyteIds":{"description":"array of exabyteIds for materials in dataset","type":"array","items":{"type":"string"}},"extra":{"description":"holder for any extra information, eg. coming from user-uploaded CSV file"}},"required":["exabyteIds"]}}}},"required":["categories","precision","data"]},{"$id":"methods-directory/physical/ao/dunning","$schema":"http://json-schema.org/draft-07/schema#","title":"unit method ao dunning","description":"Dunning correlation-consistent basis set unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dunning correlation-consistent basis set category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Approximating the electronic wave function with a atomic orbital basis schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["ao"]},"subtype":{"enum":["pople","dunning","other"]}}}],"properties":{"subtype":{"enum":["dunning"]}}},"parameters":{"allOf":[{"type":"object","properties":{"basisSlug":{"enum":["cc-pvdz","cc-pvtz","cc-pvqz"]}}}]}},"required":["categories"],"definitions":{"ao-basis-dunning":{"type":"object","properties":{"basisSlug":{"enum":["cc-pvdz","cc-pvtz","cc-pvqz"]}}}}},{"$id":"methods-directory/physical/ao/enum-options","popleAoBasis":{"enum":["3-21G","6-31G","6-311G"]},"dunningAoBasis":{"enum":["cc-pvdz","cc-pvtz","cc-pvqz"]},"otherAoBasis":{"enum":["sto-3g","sto-4g","sto-6g","def2-svp","def2-tzvp","def2-qzvp","cbs-qb3"]}},{"$id":"methods-directory/physical/ao/other","$schema":"http://json-schema.org/draft-07/schema#","title":"unit method ao other","description":"Other (neither Pople nor Dunning) basis set unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Other (neither Pople nor Dunning) basis set category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Approximating the electronic wave function with a atomic orbital basis schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["ao"]},"subtype":{"enum":["pople","dunning","other"]}}}],"properties":{"subtype":{"enum":["other"]}}},"parameters":{"allOf":[{"type":"object","properties":{"basisSlug":{"enum":["sto-3g","sto-4g","sto-6g","def2-svp","def2-tzvp","def2-qzvp","cbs-qb3"]}}}]}},"required":["categories"],"definitions":{"ao-basis-other":{"type":"object","properties":{"basisSlug":{"enum":["sto-3g","sto-4g","sto-6g","def2-svp","def2-tzvp","def2-qzvp","cbs-qb3"]}}}}},{"$id":"methods-directory/physical/ao/pople","$schema":"http://json-schema.org/draft-07/schema#","title":"unit method ao pople","description":"Pople basis set unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Pople basis set category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Approximating the electronic wave function with a atomic orbital basis schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["ao"]},"subtype":{"enum":["pople","dunning","other"]}}}],"properties":{"subtype":{"enum":["pople"]}}},"parameters":{"allOf":[{"type":"object","properties":{"basisSlug":{"enum":["3-21G","6-31G","6-311G"]}}}]}},"required":["categories"],"definitions":{"ao-basis-pople":{"type":"object","properties":{"basisSlug":{"enum":["3-21G","6-31G","6-311G"]}}}}},{"$id":"methods-directory/physical/psp/file","$schema":"http://json-schema.org/draft-07/schema#","title":"Pseudopotential file","type":"object","properties":{"slug":{"enum":["pseudopotential"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"File data item","type":"object","properties":{"element":{"type":"string","description":"chemical element"},"hash":{"type":"string","description":"MD5 hash of the pseudopotential file"},"type":{"enum":["us","nc","nc-fr","paw","coulomb"]},"source":{"type":"string","description":"explains where this came from"},"version":{"type":"string","description":"explains the version of where this came from"},"exchangeCorrelation":{"type":"object","properties":{"approximation":{"description":"DFT approximation","type":"string"},"functional":{"description":"Exchange correlation functional","type":"string"},"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}},"valenceConfiguration":{"type":"array","description":"contains pseudo orbital information, including orbital names and occupations","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic orbital schema","type":"object","properties":{"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalIndex":{"type":"integer","minimum":1},"principalNumber":{"type":"integer","minimum":1,"maximum":7},"angularMomentum":{"type":"integer","minimum":0,"maximum":3},"occupation":{"type":"number","description":"Shell occupation","minimum":0,"maximum":14}}}},"path":{"type":"string","description":"location of the pseudopotential file on filesystem"},"apps":{"type":"array","description":"The names of the simulation engines that can use this pseudopotential, e.g. espresso","items":{"type":"string"}},"filename":{"type":"string","description":"filename of pseudopotential file on filesystem"},"name":{"type":"string","description":"name of the data category","enum":["pseudopotential"]},"cutoffs":{"type":"object","description":"Suggested cutoff values for wave function and charge density.","additionalProperties":false,"properties":{"wavefunction":{"type":"array","description":"Energy cutoff values for wavefunction plane wave expansion.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for energy value with unit corresponding to a specific accuracy level, e.g., used for suggested wavefunction and charge density cutoffs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for scalar values with accuracy levels","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]}},"required":["accuracy_level"]}],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]}},"required":["unit"]}},"density":{"type":"array","description":"Energy cutoff values for charge density plane wave expansion.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for energy value with unit corresponding to a specific accuracy level, e.g., used for suggested wavefunction and charge density cutoffs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for scalar values with accuracy levels","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]}},"required":["accuracy_level"]}],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]}},"required":["unit"]}}}}},"required":["element","type","exchangeCorrelation","source","path","apps","name","hash"]},"source":{"type":"object","description":"TODO: remove in the future","properties":{"info":{"type":"object"},"type":{"type":"string"}}}}},{"$id":"methods-directory/physical/psp/file-data-item","$schema":"http://json-schema.org/draft-07/schema#","title":"File data item","type":"object","properties":{"element":{"type":"string","description":"chemical element"},"hash":{"type":"string","description":"MD5 hash of the pseudopotential file"},"type":{"enum":["us","nc","nc-fr","paw","coulomb"]},"source":{"type":"string","description":"explains where this came from"},"version":{"type":"string","description":"explains the version of where this came from"},"exchangeCorrelation":{"type":"object","properties":{"approximation":{"description":"DFT approximation","type":"string"},"functional":{"description":"Exchange correlation functional","type":"string"},"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}},"valenceConfiguration":{"type":"array","description":"contains pseudo orbital information, including orbital names and occupations","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic orbital schema","type":"object","properties":{"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalIndex":{"type":"integer","minimum":1},"principalNumber":{"type":"integer","minimum":1,"maximum":7},"angularMomentum":{"type":"integer","minimum":0,"maximum":3},"occupation":{"type":"number","description":"Shell occupation","minimum":0,"maximum":14}}}},"path":{"type":"string","description":"location of the pseudopotential file on filesystem"},"apps":{"type":"array","description":"The names of the simulation engines that can use this pseudopotential, e.g. espresso","items":{"type":"string"}},"filename":{"type":"string","description":"filename of pseudopotential file on filesystem"},"name":{"type":"string","description":"name of the data category","enum":["pseudopotential"]},"cutoffs":{"type":"object","description":"Suggested cutoff values for wave function and charge density.","additionalProperties":false,"properties":{"wavefunction":{"type":"array","description":"Energy cutoff values for wavefunction plane wave expansion.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for energy value with unit corresponding to a specific accuracy level, e.g., used for suggested wavefunction and charge density cutoffs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for scalar values with accuracy levels","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]}},"required":["accuracy_level"]}],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]}},"required":["unit"]}},"density":{"type":"array","description":"Energy cutoff values for charge density plane wave expansion.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for energy value with unit corresponding to a specific accuracy level, e.g., used for suggested wavefunction and charge density cutoffs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for scalar values with accuracy levels","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]}},"required":["accuracy_level"]}],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]}},"required":["unit"]}}}}},"required":["element","type","exchangeCorrelation","source","path","apps","name","hash"]},{"$id":"methods-directory/physical/psp","$schema":"http://json-schema.org/draft-07/schema#","title":"unit method pseudopotential","description":"Core-valence separation by means of pseudopotentials (effective potential)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Pseudopotential category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["psp"]},"subtype":{"enum":["us","nc","nc-fr","paw","coulomb"]}}},"data":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Pseudopotential file","type":"object","properties":{"slug":{"enum":["pseudopotential"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"File data item","type":"object","properties":{"element":{"type":"string","description":"chemical element"},"hash":{"type":"string","description":"MD5 hash of the pseudopotential file"},"type":{"enum":["us","nc","nc-fr","paw","coulomb"]},"source":{"type":"string","description":"explains where this came from"},"version":{"type":"string","description":"explains the version of where this came from"},"exchangeCorrelation":{"type":"object","properties":{"approximation":{"description":"DFT approximation","type":"string"},"functional":{"description":"Exchange correlation functional","type":"string"},"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}},"valenceConfiguration":{"type":"array","description":"contains pseudo orbital information, including orbital names and occupations","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic orbital schema","type":"object","properties":{"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalIndex":{"type":"integer","minimum":1},"principalNumber":{"type":"integer","minimum":1,"maximum":7},"angularMomentum":{"type":"integer","minimum":0,"maximum":3},"occupation":{"type":"number","description":"Shell occupation","minimum":0,"maximum":14}}}},"path":{"type":"string","description":"location of the pseudopotential file on filesystem"},"apps":{"type":"array","description":"The names of the simulation engines that can use this pseudopotential, e.g. espresso","items":{"type":"string"}},"filename":{"type":"string","description":"filename of pseudopotential file on filesystem"},"name":{"type":"string","description":"name of the data category","enum":["pseudopotential"]},"cutoffs":{"type":"object","description":"Suggested cutoff values for wave function and charge density.","additionalProperties":false,"properties":{"wavefunction":{"type":"array","description":"Energy cutoff values for wavefunction plane wave expansion.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for energy value with unit corresponding to a specific accuracy level, e.g., used for suggested wavefunction and charge density cutoffs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for scalar values with accuracy levels","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]}},"required":["accuracy_level"]}],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]}},"required":["unit"]}},"density":{"type":"array","description":"Energy cutoff values for charge density plane wave expansion.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for energy value with unit corresponding to a specific accuracy level, e.g., used for suggested wavefunction and charge density cutoffs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for scalar values with accuracy levels","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]}},"required":["accuracy_level"]}],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]}},"required":["unit"]}}}}},"required":["element","type","exchangeCorrelation","source","path","apps","name","hash"]},"source":{"type":"object","description":"TODO: remove in the future","properties":{"info":{"type":"object"},"type":{"type":"string"}}}}}}},"required":["categories"]},{"$id":"methods-directory/physical/pw","$schema":"http://json-schema.org/draft-07/schema#","title":"unit method plane wave","description":"Approximating the electronic wave function with a plane wave basis","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane wave catgeory schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["pw"]}}}},"required":["categories"]},{"$id":"methods-directory/physical/smearing","$schema":"http://json-schema.org/draft-07/schema#","title":"unit method smearing","description":"Approximating Heaviside step function with smooth function","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Smearing methods category schema","description":"Approximating Heaviside step function with smooth function","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["smearing"]},"subtype":{"enum":["gaussian","marzari-vanderbilt","methfessel-paxton","fermi-dirac"]}}}},"required":["categories"]},{"$id":"methods-directory/physical/tetrahedron","$schema":"http://json-schema.org/draft-07/schema#","title":"unit method tetrahedron","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Tetrahedron method for Brillouin zone integration category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["qm"]}}}],"properties":{"tier2":{"enum":["wf"]}}}],"properties":{"type":{"enum":["tetrahedron"]},"subtype":{"enum":["linear","optimized","bloechl"]}}}},"required":["categories"]},{"$id":"model/categorized-model","$schema":"http://json-schema.org/draft-07/schema#","title":"categorized model","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"model without method schema (base)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"type":"object","description":"Model parameters defined in-place or via model mixins"},"reference":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}},"required":["categories","parameters"]}],"properties":{"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"units":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"}}}}},"required":["units"]}},"required":["method"]},{"$id":"model/mixins/dft/double-hybrid-functional","$schema":"http://json-schema.org/draft-07/schema#","title":"Double hybrid functional mixin","type":"object","properties":{"functional":{"enum":["b2plyp"]}}},{"$id":"model/mixins/dft/enum-options","lda":{"enum":["pz"]},"gga":{"enum":["pbe","pbesol"]},"mgga":{"enum":["scan"]},"hybrid":{"enum":["hse06","b3lyp"]},"doubleHybrid":{"enum":["b2plyp"]}},{"$id":"model/mixins/dft/gga-functional","$schema":"http://json-schema.org/draft-07/schema#","title":"GGA functional mixin","type":"object","properties":{"functional":{"enum":["pbe","pbesol"]}},"additionalProperties":true},{"$id":"model/mixins/dft/hybrid-functional","$schema":"http://json-schema.org/draft-07/schema#","title":"Hybrid functional mixin","type":"object","properties":{"functional":{"enum":["hse06","b3lyp"]}}},{"$id":"model/mixins/dft/lda-functional","$schema":"http://json-schema.org/draft-07/schema#","title":"LDA functional mixin","type":"object","properties":{"functional":{"enum":["pz"]}},"additionalProperties":true},{"$id":"model/mixins/dft/mgga-functional","$schema":"http://json-schema.org/draft-07/schema#","title":"Meta-GGA functional mixin","type":"object","properties":{"functional":{"enum":["scan"]}},"additionalProperties":true},{"$id":"model/mixins/dispersion-correction","$schema":"http://json-schema.org/draft-07/schema#","title":"Dispersion correction mixin","type":"object","properties":{"dispersionCorrection":{"enum":["dft-d2","dft-d3","xdm","ts"]}}},{"$id":"model/mixins/enum-options","spinPolarization":{"enum":["collinear","non-collinear"]},"dispersionCorrection":{"enum":["dft-d2","dft-d3","xdm","ts"]},"hubbardType":{"enum":["u"]}},{"$id":"model/mixins/hubbard","$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard model mixin","type":"object","properties":{"hubbardType":{"enum":["u"]}}},{"$id":"model/mixins/spin-orbit-coupling","$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-orbit coupling mixin","type":"object","properties":{"spinOrbitCoupling":{"type":"boolean"}},"additionalProperties":true},{"$id":"model/mixins/spin-polarization","$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-polarization mixin","type":"object","properties":{"spinPolarization":{"enum":["collinear","non-collinear"]}},"additionalProperties":true},{"$id":"model/model-parameters","$schema":"http://json-schema.org/draft-07/schema#","title":"ModelParameters","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard model mixin","type":"object","properties":{"hubbardType":{"enum":["u"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-polarization mixin","type":"object","properties":{"spinPolarization":{"enum":["collinear","non-collinear"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-orbit coupling mixin","type":"object","properties":{"spinOrbitCoupling":{"type":"boolean"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dispersion correction mixin","type":"object","properties":{"dispersionCorrection":{"enum":["dft-d2","dft-d3","xdm","ts"]}}},{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"LDA functional mixin","type":"object","properties":{"functional":{"enum":["pz"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"GGA functional mixin","type":"object","properties":{"functional":{"enum":["pbe","pbesol"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Meta-GGA functional mixin","type":"object","properties":{"functional":{"enum":["scan"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hybrid functional mixin","type":"object","properties":{"functional":{"enum":["hse06","b3lyp"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Double hybrid functional mixin","type":"object","properties":{"functional":{"enum":["b2plyp"]}}}]}]},{"$id":"model/model-without-method","$schema":"http://json-schema.org/draft-07/schema#","title":"model without method schema (base)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"type":"object","description":"Model parameters defined in-place or via model mixins"},"reference":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}},"required":["categories","parameters"]},{"$id":"model","$schema":"http://json-schema.org/draft-07/schema#","title":"base model","type":"object","properties":{"type":{"description":"general type of the model, eg. `dft`","type":"string"},"subtype":{"description":"general subtype of the model, eg. `lda`","type":"string"},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$id":"models-category/enum-options","physicsBased":{"enum":["pb"]},"statistical":{"enum":["st"]}},{"$id":"models-category/pb/enum-options","quantumMechanical":{"enum":["qm"]}},{"$id":"models-category/pb/qm/abin/enum-options","gwApproximation":{"enum":["gw"]},"gwSubtypes":{"enum":["g0w0","evgw0","evgw"]}},{"$id":"models-category/pb/qm/abin/gw","$schema":"http://json-schema.org/draft-07/schema#","title":"GW category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ab initio category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["abin"]}}}],"properties":{"type":{"enum":["gw"]},"subtype":{"enum":["g0w0","evgw0","evgw"]}}},{"$id":"models-category/pb/qm/abin","$schema":"http://json-schema.org/draft-07/schema#","title":"Ab initio category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["abin"]}}},{"$id":"models-category/pb/qm/dft/enum-options","kohnSham":{"enum":["ksdft"]}},{"$id":"models-category/pb/qm/dft/ksdft/double-hybrid","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT double hybrid functional category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}}],"properties":{"subtype":{"enum":["double-hybrid"]}}},{"$id":"models-category/pb/qm/dft/ksdft/enum-options","localDensityApproximation":{"enum":["lda"]},"generalizedGradientApproximation":{"enum":["gga"]},"metaGGA":{"enum":["mgga"]},"hybrid":{"enum":["hybrid"]},"doubleHybrid":{"enum":["double-hybrid"]}},{"$id":"models-category/pb/qm/dft/ksdft/gga","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA functional category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}}],"properties":{"subtype":{"enum":["gga"]}}},{"$id":"models-category/pb/qm/dft/ksdft/hybrid","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid functional category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}}],"properties":{"subtype":{"enum":["hybrid"]}}},{"$id":"models-category/pb/qm/dft/ksdft/lda","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA functional category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}}],"properties":{"subtype":{"enum":["lda"]}}},{"$id":"models-category/pb/qm/dft/ksdft/mgga","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT meta-GGA functional category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}}],"properties":{"subtype":{"enum":["mgga"]}}},{"$id":"models-category/pb/qm/dft/ksdft","$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}},{"$id":"models-category/pb/qm/dft","$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}},{"$id":"models-category/pb/qm/enum-options","abInitio":{"enum":["abin"]},"densityFunctional":{"enum":["dft"]},"semiEmpirical":{"enum":["semp"]}},{"$id":"models-category/pb/qm/semp","$schema":"http://json-schema.org/draft-07/schema#","title":"Semi-empirical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["semp"]}}},{"$id":"models-category/pb/qm","$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}},{"$id":"models-category/pb","$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}},{"$id":"models-category/st/det/enum-options","machineLearning":{"enum":["ml"]}},{"$id":"models-category/st/det/ml/enum-options","regression":{"enum":["re"]}},{"$id":"models-category/st/det/ml/re","$schema":"http://json-schema.org/draft-07/schema#","title":"regression model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"machine learning model category schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"deterministic model category schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"statistical model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["st"]}}}],"properties":{"tier2":{"enum":["det"]}}}],"properties":{"tier3":{"enum":["ml"]}}}],"properties":{"type":{"enum":["re"]}}},{"$id":"models-category/st/det/ml","$schema":"http://json-schema.org/draft-07/schema#","title":"machine learning model category schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"deterministic model category schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"statistical model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["st"]}}}],"properties":{"tier2":{"enum":["det"]}}}],"properties":{"tier3":{"enum":["ml"]}}},{"$id":"models-category/st/det","$schema":"http://json-schema.org/draft-07/schema#","title":"deterministic model category schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"statistical model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["st"]}}}],"properties":{"tier2":{"enum":["det"]}}},{"$id":"models-category/st/enum-options","deterministic":{"enum":["det"]}},{"$id":"models-category/st","$schema":"http://json-schema.org/draft-07/schema#","title":"statistical model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["st"]}}},{"$id":"models-directory/double-hybrid","$schema":"http://json-schema.org/draft-07/schema#","title":"model double hybrid functional","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"model without method schema (base)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"type":"object","description":"Model parameters defined in-place or via model mixins"},"reference":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}},"required":["categories","parameters"]}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT double hybrid functional category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}}],"properties":{"subtype":{"enum":["double-hybrid"]}}},"parameters":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Double hybrid functional mixin","type":"object","properties":{"functional":{"enum":["b2plyp"]}}},{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-orbit coupling mixin","type":"object","properties":{"spinOrbitCoupling":{"type":"boolean"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dispersion correction mixin","type":"object","properties":{"dispersionCorrection":{"enum":["dft-d2","dft-d3","xdm","ts"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-polarization mixin","type":"object","properties":{"spinPolarization":{"enum":["collinear","non-collinear"]}},"additionalProperties":true}]}]}},"required":["categories","parameters"]},{"$id":"models-directory/gga","$schema":"http://json-schema.org/draft-07/schema#","title":"model generalized gradient approximation","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"model without method schema (base)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"type":"object","description":"Model parameters defined in-place or via model mixins"},"reference":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}},"required":["categories","parameters"]}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA functional category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}}],"properties":{"subtype":{"enum":["gga"]}}},"parameters":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"GGA functional mixin","type":"object","properties":{"functional":{"enum":["pbe","pbesol"]}},"additionalProperties":true},{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-orbit coupling mixin","type":"object","properties":{"spinOrbitCoupling":{"type":"boolean"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dispersion correction mixin","type":"object","properties":{"dispersionCorrection":{"enum":["dft-d2","dft-d3","xdm","ts"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-polarization mixin","type":"object","properties":{"spinPolarization":{"enum":["collinear","non-collinear"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard model mixin","type":"object","properties":{"hubbardType":{"enum":["u"]}}}]}]}},"required":["categories","parameters"]},{"$id":"models-directory/gw","$schema":"http://json-schema.org/draft-07/schema#","title":"model gw approximation","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"model without method schema (base)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"type":"object","description":"Model parameters defined in-place or via model mixins"},"reference":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}},"required":["categories","parameters"]}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"GW category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ab initio category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["abin"]}}}],"properties":{"type":{"enum":["gw"]},"subtype":{"enum":["g0w0","evgw0","evgw"]}}},"parameters":{"allOf":[{"type":"object","properties":{"require":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}},{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"LDA functional mixin","type":"object","properties":{"functional":{"enum":["pz"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"GGA functional mixin","type":"object","properties":{"functional":{"enum":["pbe","pbesol"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Meta-GGA functional mixin","type":"object","properties":{"functional":{"enum":["scan"]}},"additionalProperties":true}]},{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-polarization mixin","type":"object","properties":{"spinPolarization":{"enum":["collinear","non-collinear"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-orbit coupling mixin","type":"object","properties":{"spinOrbitCoupling":{"type":"boolean"}},"additionalProperties":true}]}]}},"required":["categories","parameters"]},{"$id":"models-directory/hybrid","$schema":"http://json-schema.org/draft-07/schema#","title":"model hybrid functional","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"model without method schema (base)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"type":"object","description":"Model parameters defined in-place or via model mixins"},"reference":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}},"required":["categories","parameters"]}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid functional category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}}],"properties":{"subtype":{"enum":["hybrid"]}}},"parameters":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hybrid functional mixin","type":"object","properties":{"functional":{"enum":["hse06","b3lyp"]}}},{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-orbit coupling mixin","type":"object","properties":{"spinOrbitCoupling":{"type":"boolean"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dispersion correction mixin","type":"object","properties":{"dispersionCorrection":{"enum":["dft-d2","dft-d3","xdm","ts"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-polarization mixin","type":"object","properties":{"spinPolarization":{"enum":["collinear","non-collinear"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard model mixin","type":"object","properties":{"hubbardType":{"enum":["u"]}}}]}]}},"required":["categories","parameters"]},{"$id":"models-directory/lda","$schema":"http://json-schema.org/draft-07/schema#","title":"model local density approximation","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"model without method schema (base)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"type":"object","description":"Model parameters defined in-place or via model mixins"},"reference":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}},"required":["categories","parameters"]}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA functional category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}}],"properties":{"subtype":{"enum":["lda"]}}},"parameters":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"LDA functional mixin","type":"object","properties":{"functional":{"enum":["pz"]}},"additionalProperties":true},{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-orbit coupling mixin","type":"object","properties":{"spinOrbitCoupling":{"type":"boolean"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dispersion correction mixin","type":"object","properties":{"dispersionCorrection":{"enum":["dft-d2","dft-d3","xdm","ts"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-polarization mixin","type":"object","properties":{"spinPolarization":{"enum":["collinear","non-collinear"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard model mixin","type":"object","properties":{"hubbardType":{"enum":["u"]}}}]}]}},"required":["categories","parameters"]},{"$id":"models-directory/legacy/any","$schema":"http://json-schema.org/draft-07/schema#","title":"Any model schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"lda"},"functional":{"enum":["pz","pw","vwn","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"gga"},"functional":{"enum":["pbe","pbesol","pw91","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"hybrid"},"functional":{"enum":["b3lyp","hse06","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML model schema","type":"object","properties":{"type":{"enum":["ml"]},"subtype":{"enum":["re"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unknown model schema","type":"object","properties":{"type":{"enum":["unknown"]},"subtype":{"enum":["unknown"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},{"$id":"models-directory/legacy/dft","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT model schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"lda"},"functional":{"enum":["pz","pw","vwn","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"gga"},"functional":{"enum":["pbe","pbesol","pw91","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"hybrid"},"functional":{"enum":["b3lyp","hse06","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]}],"discriminator":{"propertyName":"subtype"}},{"$id":"models-directory/legacy/dft-gga","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"gga"},"functional":{"enum":["pbe","pbesol","pw91","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$id":"models-directory/legacy/dft-hybrid","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"hybrid"},"functional":{"enum":["b3lyp","hse06","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$id":"models-directory/legacy/dft-lda","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"lda"},"functional":{"enum":["pz","pw","vwn","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$id":"models-directory/legacy/ml","$schema":"http://json-schema.org/draft-07/schema#","title":"ML model schema","type":"object","properties":{"type":{"enum":["ml"]},"subtype":{"enum":["re"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$id":"models-directory/legacy/unknown","$schema":"http://json-schema.org/draft-07/schema#","title":"Unknown model schema","type":"object","properties":{"type":{"enum":["unknown"]},"subtype":{"enum":["unknown"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$id":"models-directory/mgga","$schema":"http://json-schema.org/draft-07/schema#","title":"model meta generalized gradient approximation","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"model without method schema (base)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"type":"object","description":"Model parameters defined in-place or via model mixins"},"reference":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}},"required":["categories","parameters"]}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT meta-GGA functional category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["pb"]}}}],"properties":{"tier2":{"enum":["qm"]}}}],"properties":{"tier3":{"enum":["dft"]}}}],"properties":{"type":{"enum":["ksdft"]}}}],"properties":{"subtype":{"enum":["mgga"]}}},"parameters":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Meta-GGA functional mixin","type":"object","properties":{"functional":{"enum":["scan"]}},"additionalProperties":true},{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-orbit coupling mixin","type":"object","properties":{"spinOrbitCoupling":{"type":"boolean"}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dispersion correction mixin","type":"object","properties":{"dispersionCorrection":{"enum":["dft-d2","dft-d3","xdm","ts"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-polarization mixin","type":"object","properties":{"spinPolarization":{"enum":["collinear","non-collinear"]}},"additionalProperties":true},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard model mixin","type":"object","properties":{"hubbardType":{"enum":["u"]}}}]}]}},"required":["categories","parameters"]},{"$id":"models-directory/re","$schema":"http://json-schema.org/draft-07/schema#","title":"model regression","description":"machine learning model type/subtype schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"model without method schema (base)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}},"parameters":{"type":"object","description":"Model parameters defined in-place or via model mixins"},"reference":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}},"required":["categories","parameters"]}],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"machine learning model category schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"deterministic model category schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"statistical model category schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable categories schema","description":"Used to categorize entities such as models and methods","type":"object","properties":{"tier1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"subtype":{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]}}}],"properties":{"tier1":{"enum":["st"]}}}],"properties":{"tier2":{"enum":["det"]}}}],"properties":{"tier3":{"enum":["ml"]}}}],"properties":{"type":{"enum":["re"]}}},"parameters":{"type":"object"}},"required":["categories","parameters"]},{"$id":"project","$schema":"http://json-schema.org/draft-07/schema#","title":"project schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable has metadata in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}}]}],"properties":{"gid":{"description":"project GID","type":"number"},"clusterBasedChargeRates":{"description":"charge rates info for project","type":"array","items":{"type":"object","properties":{"rate":{"type":"number"},"timestamp":{"type":"number"},"hostname":{"type":"string"}}}},"isExternal":{"type":"boolean","default":false}}},{"$id":"properties-directory/derived-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"derived properties schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},{"$id":"properties-directory/electronic-configuration","$schema":"http://json-schema.org/draft-07/schema#","title":"electronic configuration schema","type":"object","properties":{"charge":{"description":"total charge of the molecular system","type":"integer"},"multiplicity":{"description":"calculated as 2S+1, with S is the total spin angular momentum","type":"integer"}}},{"$id":"properties-directory/elemental/atomic-radius","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic radius","description":"atomic radius","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["atomic_radius"]},"units":{"enum":["km","m","cm","mm","um","nm","angstrom","a.u.","bohr","pm"]}},"required":["name"]},{"$id":"properties-directory/elemental/electronegativity","$schema":"http://json-schema.org/draft-07/schema#","title":"electronegativity","description":"electronegativity for the element (Pauling scale)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["electronegativity"]}},"required":["name"]},{"$id":"properties-directory/elemental/ionization-potential","$schema":"http://json-schema.org/draft-07/schema#","title":"Ionization potential elemental property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["ionization_potential"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}},"required":["name","units"]},{"$id":"properties-directory/enum-options","definitions":{"ExternalSource":{"type":"string","enum":["ICSD","MaterialsProject","MaterialsProjectLegacy"]},"PropertyType":{"type":"string","enum":["scalar","non-scalar","tensor","object","array-of-objects"]},"ScalarPropertyEnum":{"type":"string","enum":["defect_formation_energy","fermi_energy","formation_energy","homo_energy","ionization_potential","lumo_energy","pressure","reaction_energy_barrier","surface_energy","interfacial_energy","thermal_correction_to_energy","thermal_correction_to_enthalpy","total_energy","total_force","valence_band_offset","zero_point_energy"]},"NonScalarPropertyEnum":{"type":"string","enum":["average_potential_profile","band_gaps","band_structure","charge_density_profile","convergence_electronic","convergence_ionic","density_of_states","dielectric_tensor","file_content","final_structure","hubbard_u","hubbard_v","hubbard_v_nn","hysteresis_loop","is_relaxed","jupyter_notebook_endpoint","phonon_dispersions","phonon_dos","potential_profile","reaction_energy_profile","wavefunction_amplitude","workflow:pyml_predict"]},"TensorPropertyEnum":{"type":"string","enum":["atomic_forces","magnetic_moments","stress_tensor"]},"ObjectPropertyEnum":{"type":"string","enum":["total_energy_contributions"]},"ArrayOfObjectsPropertyEnum":{"type":"string","enum":["formation_energy_contributions"]},"ProtoPropertyEnum":{"type":"string","enum":["atomic_constraints","boundary_conditions"]},"MetaPropertyEnum":{"type":"string","enum":["pseudopotential"]}}},{"$id":"properties-directory/jupyter-notebook-endpoint","$schema":"http://json-schema.org/draft-07/schema#","title":"Jupyter notebook endpoint property schema","type":"object","properties":{"name":{"enum":["jupyter_notebook_endpoint"]},"host":{"type":"string"},"port":{"type":"number"},"token":{"type":"string"}},"required":["name","host","port","token"]},{"$id":"properties-directory/non-scalar/average-potential-profile","$schema":"http://json-schema.org/draft-07/schema#","title":"Average potential profile property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"properties":{"label":{"enum":["z coordinate"]},"units":{"enum":["km","m","cm","mm","um","nm","angstrom","a.u.","bohr","pm"]}}},"yAxis":{"properties":{"label":{"enum":["energy"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},"name":{"enum":["average_potential_profile"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/band-gaps","$schema":"http://json-schema.org/draft-07/schema#","title":"Band gaps property schema","description":"contains band gap values","type":"object","properties":{"name":{"enum":["band_gaps"]},"values":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"band gap schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"kpointConduction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"kpoint schema","description":"A k-point is a point in reciprocal space of a crystal.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}]},"kpointValence":{"$schema":"http://json-schema.org/draft-07/schema#","title":"kpoint schema","description":"A k-point is a point in reciprocal space of a crystal.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}]},"eigenvalueConduction":{"description":"eigenvalue at k-point in conduction band","type":"number"},"eigenvalueValence":{"description":"eigenvalue at k-point in valence band","type":"number"},"spin":{"type":"number"},"type":{"type":"string","enum":["direct","indirect"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}},"required":["type"]}},"eigenvalues":{"type":"array","items":{"type":"object","properties":{"kpoint":{"$schema":"http://json-schema.org/draft-07/schema#","title":"kpoint schema","description":"A k-point is a point in reciprocal space of a crystal.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}]},"weight":{"type":"number"},"eigenvalues":{"type":"array","items":{"type":"object","properties":{"spin":{"type":"number"},"energies":{"type":"array"},"occupations":{"type":"array"}}}}}}}},"required":["name","values"]},{"$id":"properties-directory/non-scalar/band-structure","$schema":"http://json-schema.org/draft-07/schema#","title":"Band structure property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["kpoints"]},"units":{"enum":["crystal","cartesian"],"default":"crystal"}}},"yAxis":{"type":"object","properties":{"label":{"enum":["energy"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},"name":{"enum":["band_structure"]},"spin":{"description":"spin of each band","type":"array","items":{"type":"number","enum":[0.5,-0.5]}}},"required":["name","spin","xAxis","yAxis"]},{"$id":"properties-directory/non-scalar/charge-density-profile","$schema":"http://json-schema.org/draft-07/schema#","title":"Charge density profile property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["z coordinate"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["charge density"]},"units":{"enum":["e/A"]}}},"name":{"enum":["charge_density_profile"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/density-of-states","$schema":"http://json-schema.org/draft-07/schema#","title":"Density of states property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["energy"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["density of states"]},"units":{"enum":["states/unitcell"]}}},"name":{"enum":["density_of_states"]},"legend":{"type":"array","items":{"type":"object","properties":{"element":{"description":"chemical element","type":"string"},"index":{"description":"index inside sub-array of atoms of the same element type","type":"integer"},"electronicState":{"description":"electronic character and shell of PDOS, such as `1s` or `s`, or `total`","type":"string","pattern":"^([1-5]{1})?(s|p|d|f|g).*$"},"spin":{"description":"spin of the electronic state","type":"number","enum":[0.5,-0.5]}}}}},"required":["name","legend"]},{"$id":"properties-directory/non-scalar/dielectric-tensor","$schema":"http://json-schema.org/draft-07/schema#","title":"dielectric tensor property schema","description":"The real and imaginary parts of the diagonal elements of the dieletric tensor","type":"object","properties":{"name":{"enum":["dielectric_tensor"]},"values":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dielectric Tensor","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"","description":"Schema for a function of frequency yielding a nx3 matrix","type":"object","properties":{"frequencies":{"description":"Frequencies","type":"array","items":{"type":"number"}},"components":{"description":"Matrix with 3 columns, e.g. x, y, z","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}],"properties":{"part":{"description":"Real or imaginary part of the dielectric tensor component","type":"string","enum":["real","imaginary"]},"spin":{"type":"number"}},"required":["part","frequencies","components"]}}},"required":["name","values"]},{"$id":"properties-directory/non-scalar/file-content","$schema":"http://json-schema.org/draft-07/schema#","title":"File content property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"name":{"enum":["file_content"]},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string","enum":["image","text","csv"],"$comment":"isGenerative:true"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}}},"required":["name","filetype","objectData"]},{"$id":"properties-directory/non-scalar/final-structure","$schema":"http://json-schema.org/draft-07/schema#","title":"Final structure property schema","type":"object","properties":{"name":{"enum":["final_structure"]},"isRelaxed":{"type":"boolean"},"materialId":{"description":"Material's identity","type":"string"}},"required":["name","isRelaxed","materialId"]},{"$id":"properties-directory/non-scalar/formation-energy-contributions","$schema":"http://json-schema.org/draft-07/schema#","title":"Formation energy contributions property schema","description":"Elemental reference total energies used to calculate formation energy.","type":"object","properties":{"name":{"enum":["formation_energy_contributions"]},"values":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Formation energy contribution schema","description":"Total energy contribution of one material used in formation energy calculation.","type":"object","properties":{"formula":{"description":"formula or label for the material used in the formation energy calculation","type":"string"},"n_atoms":{"description":"number of atoms in the material","type":"integer"},"is_elemental":{"description":"whether the material is an elemental reference","type":"boolean"},"total_energy":{"description":"total energy of the material","type":"number"},"total_energy_per_atom":{"description":"total energy per atom of the material","type":"number"},"precision_value":{"description":"precision value for the total energy property","type":"number","default":-1},"precision_metric":{"description":"metric used to report total energy precision","type":"string","enum":["unknown","KPPRA","spacing"],"default":"unknown"}},"required":["formula","n_atoms","is_elemental","total_energy","total_energy_per_atom","precision_metric","precision_value"]}}},"required":["name","values"]},{"$id":"properties-directory/non-scalar/hubbard-u","$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U parameters property schema","description":"Hubbard U values in eV corresponding to atomic species, orbital and site number.","type":"object","properties":{"name":{"enum":["hubbard_u"]},"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital numeric","description":"Atomic properties per orbital pair with numeric value e.g., Hubbard V parameters.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital","description":"Atomic properties per orbital e.g., Hubbard U parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data numeric properties","description":"Numeric value specific to atomic data","type":"object","properties":{"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}]}],"required":["id","atomicSpecies","orbitalName","value"]}}},"required":["name","values","units"]},{"$id":"properties-directory/non-scalar/hubbard-v","$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V parameters property schema","description":"Hubbard V values corresponding to atomic pairs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard parameters reusable schema","description":"Common properties for hubbard parameter schemas","type":"object","properties":{"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair numeric","description":"Atomic properties per orbital pair with numeric value e.g., Hubbard V parameters.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair","description":"Atomic properties per orbital pair e.g., Hubbard V parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"id2":{"type":"integer","description":"Site number or index in the lattice of second site"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"atomicSpecies2":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co2, O"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalName2":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"distance":{"type":"number","description":"Distance between two sites in Bohr."}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data numeric properties","description":"Numeric value specific to atomic data","type":"object","properties":{"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}]}],"required":["id","id2","atomicSpecies","atomicSpecies2","value"]}}},"required":["values","units"]}],"properties":{"name":{"enum":["hubbard_v"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/hubbard-v-nn","$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V NN parameters property schema","description":"Hubbard V value in eV for nearest neighbors used in hp.x output parsing","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard parameters reusable schema","description":"Common properties for hubbard parameter schemas","type":"object","properties":{"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair numeric","description":"Atomic properties per orbital pair with numeric value e.g., Hubbard V parameters.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair","description":"Atomic properties per orbital pair e.g., Hubbard V parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"id2":{"type":"integer","description":"Site number or index in the lattice of second site"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"atomicSpecies2":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co2, O"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalName2":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"distance":{"type":"number","description":"Distance between two sites in Bohr."}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data numeric properties","description":"Numeric value specific to atomic data","type":"object","properties":{"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}]}],"required":["id","id2","atomicSpecies","atomicSpecies2","value"]}}},"required":["values","units"]}],"properties":{"name":{"enum":["hubbard_v_nn"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/hysteresis-loop","$schema":"http://json-schema.org/draft-07/schema#","title":"Hysteresis loop property schema","description":"Response of a sample versus applied bias, combined over the switching cycles measured at each field condition, with the loop parameters read from it","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["bias"]},"units":{"enum":["V","mV"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["response"]},"units":{"enum":["km","m","cm","mm","um","nm","angstrom","a.u.","bohr","pm"]}}},"name":{"enum":["hysteresis_loop"]},"legend":{"description":"the field condition of each series in yDataSeries","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Field condition schema","description":"Whether a switching-spectroscopy reading was taken with the bias applied (on, in-field) or after each pulse at zero bias (off, out-of-field)","type":"string","enum":["on","off"]}},"parameters":{"description":"parameters read from the loop of each field condition; their voltages are in xAxis units and their responses in yAxis units","type":"object","properties":{"on":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hysteresis loop parameters schema","description":"Parameters read from a hysteresis loop, each combined over the loops measured at one field condition. Voltages are in the loop's xAxis units, responses in its yAxis units","type":"object","properties":{"imprint":{"description":"bias at the centre of the loop: half the sum of the two coercive voltages","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}]},"coerciveVoltage":{"description":"bias at which the response crosses the loop's offset, on the rising and the falling branch","type":"object","allOf":[{"type":"object","properties":{"rising":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]},"falling":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}},"required":["rising","falling"]}]},"loopWidth":{"description":"bias separation of the two coercive voltages","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}]},"loopHeight":{"description":"response separation of the two remanent responses","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}]},"remanentResponse":{"description":"response at zero bias, on the rising and the falling branch","type":"object","allOf":[{"type":"object","properties":{"rising":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]},"falling":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}},"required":["rising","falling"]}]}},"required":["imprint","coerciveVoltage","loopWidth","loopHeight","remanentResponse"],"definitions":{"branch-pair":{"type":"object","properties":{"rising":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]},"falling":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}},"required":["rising","falling"]}}},"off":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hysteresis loop parameters schema","description":"Parameters read from a hysteresis loop, each combined over the loops measured at one field condition. Voltages are in the loop's xAxis units, responses in its yAxis units","type":"object","properties":{"imprint":{"description":"bias at the centre of the loop: half the sum of the two coercive voltages","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}]},"coerciveVoltage":{"description":"bias at which the response crosses the loop's offset, on the rising and the falling branch","type":"object","allOf":[{"type":"object","properties":{"rising":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]},"falling":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}},"required":["rising","falling"]}]},"loopWidth":{"description":"bias separation of the two coercive voltages","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}]},"loopHeight":{"description":"response separation of the two remanent responses","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}]},"remanentResponse":{"description":"response at zero bias, on the rising and the falling branch","type":"object","allOf":[{"type":"object","properties":{"rising":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]},"falling":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}},"required":["rising","falling"]}]}},"required":["imprint","coerciveVoltage","loopWidth","loopHeight","remanentResponse"],"definitions":{"branch-pair":{"type":"object","properties":{"rising":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]},"falling":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}},"required":["rising","falling"]}}}},"required":["on","off"]}},"required":["name","legend","xAxis","yAxis","parameters"]},{"$id":"properties-directory/non-scalar/is-relaxed","$schema":"http://json-schema.org/draft-07/schema#","title":"Is relaxed property schema","type":"object","properties":{"name":{"enum":["is_relaxed"]},"value":{"type":"boolean"},"materialId":{"description":"Material's identity","type":"string"}},"required":["name","value","materialId"]},{"$id":"properties-directory/non-scalar/phonon-dispersions","$schema":"http://json-schema.org/draft-07/schema#","title":"Phonon band structure property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["qpoints"]},"units":{"enum":["crystal","cartesian"],"default":"crystal"}}},"yAxis":{"type":"object","properties":{"label":{"enum":["frequency"]},"units":{"enum":["cm-1","THz","meV"]}}},"name":{"enum":["phonon_dispersions"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/phonon-dos","$schema":"http://json-schema.org/draft-07/schema#","title":"Phonon density of states property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["frequency"]},"units":{"enum":["cm-1","THz","meV"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["Phonon DOS"]},"units":{"enum":["states/cm-1","states/THz","states/meV"]}}},"name":{"enum":["phonon_dos"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/potential-profile","$schema":"http://json-schema.org/draft-07/schema#","title":"Potential profile property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["z coordinate"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["energy"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},"name":{"enum":["potential_profile"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/reaction-energy-profile","$schema":"http://json-schema.org/draft-07/schema#","title":"Reaction energy profile property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["reaction coordinate"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["energy"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},"name":{"enum":["reaction_energy_profile"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/stress-tensor","$schema":"http://json-schema.org/draft-07/schema#","title":"Stress tensor property schema","type":"object","properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"name":{"enum":["stress_tensor"]},"units":{"enum":["kbar","pa"]}},"required":["name","value","units"]},{"$id":"properties-directory/non-scalar/total-energy-contributions","$schema":"http://json-schema.org/draft-07/schema#","title":"Total energy contributions property schema","type":"object","properties":{"temperatureEntropy":{"description":"product of temperature and configurational entropy","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["temperature_entropy"]}}},"harris_foulkes":{"description":"non self-consitent energy based on an input charge density","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["harris_foulkes"]}}},"smearing":{"description":"smearing energy","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["smearing"]}}},"one_electron":{"description":"kinetic + pseudopotential energy","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["one_electron"]}}},"hartree":{"description":"energy due to coulomb potential","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["hartree"]}}},"exchange":{"description":"exchange energy","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["exchange"]}}},"exchange_correlation":{"description":"exchange and correlation energy per particle","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["exchange_correlation"]}}},"ewald":{"description":"summation of interaction energies at long length scales due to coloumbic interactions","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["ewald"]}}},"alphaZ":{"description":"divergent electrostatic ion interaction in compensating electron gas","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["alphaZ"]}}},"atomicEnergy":{"description":"kinetic energy of wavefunctions in the atomic limit","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["atomic_energy"]}}},"eigenvalues":{"description":"sum of one electron energies of kinetic, electrostatic, and exchange correlation","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["eigenvalues"]}}},"PAWDoubleCounting2":{"description":"double counting correction 2","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["PAW_double-counting_correction_2"]}}},"PAWDoubleCounting3":{"description":"double counting correction 3","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["PAW_double-counting_correction_3"]}}},"hartreeFock":{"description":"hartree-fock contribution","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["hartree_fock"]}}},"name":{"enum":["total_energy_contributions"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/vibrational-spectrum","$schema":"http://json-schema.org/draft-07/schema#","title":"Vibrational spectrum property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["frequency","wavenumber"]},"units":{"enum":["cm-1","THz","meV"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["Intensity","Absorbance","Absorption coefficient"]},"units":{"enum":["(debye/angstrom)^2","km/mol","m/mol","a.u."]}}},"name":{"enum":["vibrational_spectrum"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/wavefunction-amplitude","$schema":"http://json-schema.org/draft-07/schema#","title":"Wavefunction amplitude property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["coordinate"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["amplitude"]}}},"name":{"enum":["wavefunction_amplitude"]}},"required":["name"]},{"$id":"properties-directory/non-scalar/workflow","$schema":"http://json-schema.org/draft-07/schema#","title":"Workflow property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"base workflow schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this workflow (TODO: add enums)","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"isUsingDataset":{"description":"Whether to use the dataset tab in the job designer. Mutually exclusive with using the materials tab.","type":"boolean"},"isMultiMaterial":{"description":"Defines whether the workflow is for a multi-material simulation","type":"boolean"},"subworkflows":{"description":"Array of subworkflows. Subworkflow can be an instance of workflow to allow for nesting","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Mixin Schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this subworkflow","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]},"units":{"description":"Contains the Units of the subworkflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow subworkflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","properties":{"type":{"const":"io"},"subtype":{"enum":["input","output","dataFrame"]},"source":{"enum":["api","object_storage"]},"input":{"type":"array","items":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]}],"discriminator":{"propertyName":"type"}}}},"required":["subtype","source","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","properties":{"type":{"const":"condition"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"statement":{"description":"Condition statement. e.g. 'abs(x-total_energy) < 1e-5'","type":"string"},"then":{"description":"Flowchart ID reference for `then` part of the condition.","type":"string"},"else":{"description":"Flowchart ID reference for `else` part of the condition.","type":"string"},"maxOccurrences":{"description":"Maximum occurrence of the condition, usable for loops.","type":"integer"},"throwException":{"description":"Throw exception on reaching to maximum occurence.","type":"boolean"}},"required":["input","statement","then","else","maxOccurrences"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","properties":{"type":{"const":"assertion"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}},"required":["name","statement"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"scope schema","type":"object","properties":{"scope":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","properties":{"type":{"const":"assignment"},"input":{"description":"Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"operand":{"description":"Name of the global variable. e.g. 'x'","type":"string"},"value":{"description":"Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}},"required":["name","operand","value"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"model":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Any model schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"lda"},"functional":{"enum":["pz","pw","vwn","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"gga"},"functional":{"enum":["pbe","pbesol","pw91","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"hybrid"},"functional":{"enum":["b3lyp","hse06","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML model schema","type":"object","properties":{"type":{"enum":["ml"]},"subtype":{"enum":["re"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unknown model schema","type":"object","properties":{"type":{"enum":["unknown"]},"subtype":{"enum":["unknown"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}},"required":["model","properties","application","units"]}]}},"units":{"description":"Contains the Units of the Workflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit mixin schema","type":"object","properties":{"type":{"const":"map"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","properties":{"target":{"description":"Name of the target variable to substitute using the values below. e.g. K_POINTS","type":"string"},"scope":{"description":"Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.","type":"string"},"name":{"description":"Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.","type":"string"},"values":{"description":"Sequence of values for the target Jinja variable. Optional if `scope` and `name` are given. This can be used for map-reduce type parallel execution","type":"array","items":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"object"}]}},"useValues":{"type":"boolean"}},"required":["target"]}},"required":["input","workflowId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit mixin schema","type":"object","properties":{"type":{"const":"reduce"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","properties":{"operation":{"description":"reduce operation, e.g. aggregate","type":"string"},"arguments":{"description":"arguments which are passed to reduce operation function","type":"array","items":{"type":"string"}}},"required":["operation","arguments"]}}},"required":["mapFlowchartId","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"application":{"description":"information about the main application used for workflow categorization by application in standata.","type":"object","properties":{"name":{"description":"name of the application","type":"string"}}},"tags":{"description":"tags for the workflow","type":"array","items":{"type":"string"}}},"required":["properties","units","subworkflows"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Description schema","type":"object","properties":{"description":{"description":"entity description","type":"string"},"descriptionObject":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"workflows":{"description":"Array of workflows with the same schema as the current one.","type":"array","items":{"type":"object"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]}},"required":["workflows"]}],"properties":{"name":{"enum":["workflow:pyml_predict"]}},"required":["name"]},{"$id":"properties-directory/reusable/hubbard-parameters","$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard parameters reusable schema","description":"Common properties for hubbard parameter schemas","type":"object","properties":{"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair numeric","description":"Atomic properties per orbital pair with numeric value e.g., Hubbard V parameters.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair","description":"Atomic properties per orbital pair e.g., Hubbard V parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"id2":{"type":"integer","description":"Site number or index in the lattice of second site"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"atomicSpecies2":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co2, O"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalName2":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"distance":{"type":"number","description":"Distance between two sites in Bohr."}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data numeric properties","description":"Numeric value specific to atomic data","type":"object","properties":{"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}]}],"required":["id","id2","atomicSpecies","atomicSpecies2","value"]}}},"required":["values","units"]},{"$id":"properties-directory/scalar/defect-formation-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Defect formation energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["defect_formation_energy"]}},"required":["name"]},{"$id":"properties-directory/scalar/electron-affinity","$schema":"http://json-schema.org/draft-07/schema#","title":"Electron affinity property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["electron_affinity"]}},"required":["name"]},{"$id":"properties-directory/scalar/fermi-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Fermi energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["fermi_energy"]}},"required":["name"]},{"$id":"properties-directory/scalar/formation-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Formation energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["formation_energy"]}},"required":["name","units"]},{"$id":"properties-directory/scalar/homo-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"HOMO energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["homo_energy"]}},"required":["name"]},{"$id":"properties-directory/scalar/interfacial-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Interfacial energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["interfacial_energy"]}},"required":["name"]},{"$id":"properties-directory/scalar/ionization-potential","$schema":"http://json-schema.org/draft-07/schema#","title":"Ionization potential scalar property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["ionization_potential"]}},"required":["name"]},{"$id":"properties-directory/scalar/lumo-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"LUMO energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["lumo_energy"]}},"required":["name"]},{"$id":"properties-directory/scalar/pressure","$schema":"http://json-schema.org/draft-07/schema#","title":"Pressure property schema","description":"average pressure in unit cell","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["pressure"]},"units":{"enum":["kbar","pa"]}},"required":["name","units"]},{"$id":"properties-directory/scalar/reaction-energy-barrier","$schema":"http://json-schema.org/draft-07/schema#","title":"Reaction energy barrier property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["reaction_energy_barrier"]}},"required":["name"]},{"$id":"properties-directory/scalar/surface-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Surface energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["surface_energy"]}},"required":["name"]},{"$id":"properties-directory/scalar/thermal-correction-to-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Thermal correction to energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["thermal_correction_to_energy"]}},"required":["name"]},{"$id":"properties-directory/scalar/thermal-correction-to-enthalpy","$schema":"http://json-schema.org/draft-07/schema#","title":"Thermal correction to enthalpy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["thermal_correction_to_enthalpy"]}},"required":["name"]},{"$id":"properties-directory/scalar/total-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Total energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["total_energy"]}},"required":["name","units"]},{"$id":"properties-directory/scalar/total-force","$schema":"http://json-schema.org/draft-07/schema#","title":"Total forces property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["total_force"]},"units":{"enum":["eV/bohr","eV/angstrom","Ry/a.u.","newton","kg*m/s^2","eV/a.u."]}},"required":["name","units"]},{"$id":"properties-directory/scalar/valence-band-offset","$schema":"http://json-schema.org/draft-07/schema#","title":"Valence band offset property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["valence_band_offset"]}},"required":["name"]},{"$id":"properties-directory/scalar/zero-point-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Zero point energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["zero_point_energy"]}},"required":["name"]},{"$id":"properties-directory/structural/atomic-forces","$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic forces property schema","description":"coordinates of atoms by ids, vector, unitless","type":"object","properties":{"name":{"enum":["atomic_forces"]},"values":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vectors schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vector schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"enum":["eV/bohr","eV/angstrom","Ry/a.u.","newton","kg*m/s^2","eV/a.u."]}},"required":["name","units","values"]},{"$id":"properties-directory/structural/basis/atomic-constraint","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraint schema","description":"constraint of atoms by ids, used to constraint the position etc.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector boolean 3d schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 boolean elements schema","type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}]}}},{"$id":"properties-directory/structural/basis/atomic-constraints","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraints schema","description":"atomic constraints schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraint schema","description":"constraint of atoms by ids, used to constraint the position etc.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector boolean 3d schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 boolean elements schema","type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}]}}}},{"$id":"properties-directory/structural/basis/atomic-constraints-property","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraints property schema","description":"atomic constraints property schema (as stored in a database)","type":"object","properties":{"name":{"enum":["atomic_constraints"]},"values":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraints schema","description":"atomic constraints schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraint schema","description":"constraint of atoms by ids, used to constraint the position etc.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector boolean 3d schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 boolean elements schema","type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}]}}}}},"required":["name","values"]},{"$id":"properties-directory/structural/basis/atomic-coordinate","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}},{"$id":"properties-directory/structural/basis/atomic-coordinates","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},{"$id":"properties-directory/structural/basis/atomic-element","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}},{"$id":"properties-directory/structural/basis/atomic-elements","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},{"$id":"properties-directory/structural/basis/atomic-label","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}},{"$id":"properties-directory/structural/basis/atomic-labels","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}},{"$id":"properties-directory/structural/basis/bonds","$schema":"http://json-schema.org/draft-07/schema#","title":"bonds schema","type":"array","items":{"type":"object","properties":{"atomPair":{"description":"indices of the two connected atoms","type":"array","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}}],"minItems":2,"maxItems":2},"bondType":{"type":"string","enum":["single","double","triple","quadruple","aromatic","tautomeric","dative","other"]}}},"uniqueItems":true},{"$id":"properties-directory/structural/basis/boundary-conditions","$schema":"http://json-schema.org/draft-07/schema#","title":"boundary conditions property schema","description":"boundary conditions property schema (as stored in a database)","type":"object","properties":{"name":{"enum":["boundary_conditions"]},"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["name","type","offset"]},{"$id":"properties-directory/structural/basis/units-enum","$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},{"$id":"properties-directory/structural/basis","$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},{"$id":"properties-directory/structural/basis-constrained","$schema":"http://json-schema.org/draft-07/schema#","title":"basis constrained schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","properties":{"elements":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic elements schema","description":"atomic elements schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic element schema","description":"chemical element of an atom according to the periodic table","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"type":"string"}}}],"properties":{"value":{"description":"All elements, including extra elements","anyOf":[{"enum":["H","He","Li","Be","B","C","N","O","F","Ne","Na","Mg","Al","Si","P","S","Cl","Ar","K","Ca","Sc","Ti","V","Cr","Mn","Fe","Co","Ni","Cu","Zn","Ga","Ge","As","Se","Br","Kr","Rb","Sr","Y","Zr","Nb","Mo","Tc","Ru","Rh","Pd","Ag","Cd","In","Sn","Sb","Te","I","Xe","Cs","Ba","La","Ce","Pr","Nd","Pm","Sm","Eu","Gd","Tb","Dy","Ho","Er","Tm","Yb","Lu","Hf","Ta","W","Re","Os","Ir","Pt","Au","Hg","Tl","Pb","Bi","Po","At","Rn","Fr","Ra","Ac","Th","Pa","U","Np","Pu","Am","Cm","Bk","Cf","Es","Fm","Md","No","Lr","Rf","Db","Sg","Bh","Hs","Mt","Ds","Rg","Cn","Nh","Fl","Mc","Lv","Ts","Og"]},{"description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}]}}}},"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinates schema","description":"atomic coordinates schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic coordinate schema","description":"coordinate of an atom","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","allOf":[{"enum":["crystal","cartesian"],"default":"crystal"}]},"labels":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic labels schema","description":"atomic labels schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic label schema","description":"Optional label (e.g., 1, 2, as in Fe1, Fe2) to distinguish species, e.g. to have magnetic moment.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"anyOf":[{"type":["integer","string","number"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer positive single digit","type":"integer","minimum":1,"maximum":9}]}}}}},"required":["elements","coordinates"]},{"properties":{"constraints":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraints schema","description":"atomic constraints schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraint schema","description":"constraint of atoms by ids, used to constraint the position etc.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector boolean 3d schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 boolean elements schema","type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}]}}}}},"required":["constraints"]}]},{"$id":"properties-directory/structural/density","$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]}}},{"$id":"properties-directory/structural/elemental-ratio","$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["elemental_ratio"]},"value":{"type":"number","minimum":0,"maximum":1},"element":{"type":"string","description":"the element this ratio is for"}}},{"$id":"properties-directory/structural/inchi","$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi"]}}},{"$id":"properties-directory/structural/inchi-key","$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"PrimitiveString","type":"object","properties":{"value":{"type":"string"}},"required":["value"]}],"properties":{"name":{"enum":["inchi_key"]}}},{"$id":"properties-directory/structural/lattice/type-enum","$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},{"$id":"properties-directory/structural/lattice/type-extended-enum","$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type extended enum","type":"string","enum":["BCC","BCT-1","BCT-2","CUB","FCC","HEX","MCL","MCLC-1","MCLC-2","MCLC-3","MCLC-4","MCLC-5","ORC","ORCC","ORCF-1","ORCF-2","ORCF-3","ORCI","RHL-1","RHL-2","TET","TRI_1a","TRI_1b","TRI_2a","TRI_2b"]},{"$id":"properties-directory/structural/lattice/units/angle-enum","$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]},{"$id":"properties-directory/structural/lattice/units/length-enum","$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},{"$id":"properties-directory/structural/lattice/units","$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}},{"$id":"properties-directory/structural/lattice/vectors/units-enum","$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},{"$id":"properties-directory/structural/lattice/vectors","$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},{"$id":"properties-directory/structural/lattice","$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","properties":{"a":{"description":"length of the first lattice vector","type":"number"},"b":{"description":"length of the second lattice vector","type":"number"},"c":{"description":"length of the third lattice vector","type":"number"},"alpha":{"description":"angle between first and second lattice vector","type":"number"},"beta":{"description":"angle between second and third lattice vector","type":"number"},"gamma":{"description":"angle between first and third lattice vector","type":"number"},"vectors":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors schema","type":"object","properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]},"alat":{"description":"lattice parameter for fractional coordinates","type":"number","default":1},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]}},"required":["a","b","c"]},"type":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice type enum","type":"string","enum":["CUB","BCC","FCC","TET","MCL","ORC","ORCC","ORCF","ORCI","HEX","BCT","TRI","MCLC","RHL"],"default":"TRI"},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Lattice units schema","type":"object","properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","allOf":[{"enum":["angstrom","bohr"],"default":"angstrom"}]},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","allOf":[{"enum":["degree","radian"],"default":"degree"}]}},"default":{"length":"angstrom","angle":"degree"}}},"required":["a","b","c","alpha","beta","gamma"]},{"$id":"properties-directory/structural/magnetic-moments","$schema":"http://json-schema.org/draft-07/schema#","title":"Magnetic moments property schema","description":"magnetization on each ion","type":"object","properties":{"name":{"enum":["magnetic_moments"]},"values":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vectors schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vector schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"enum":["uB"]}},"required":["name","values","units"]},{"$id":"properties-directory/structural/molecular-pattern","$schema":"http://json-schema.org/draft-07/schema#","title":"molecular pattern schema","type":"array","items":{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"functional group pattern schema","type":"object","properties":{"name":{"enum":["functional_group"]},"atoms":{"type":"array","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}}],"items":{"type":"object","properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"}}}},"SMARTS":{"description":"SMARTS string for classification of FG; https://en.wikipedia.org/wiki/SMILES_arbitrary_target_specification","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"ring pattern schema","type":"object","properties":{"name":{"enum":["ring"]},"atoms":{"type":"array","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}}],"items":{"type":"object","properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"}}}},"isAromatic":{"type":"boolean"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"special bond pattern schema","type":"object","description":"Any bonding interaction that cannot be described by simple 2-atom picture, e.g. 3-center-2-electron bond in diborane","properties":{"name":{"enum":["special_bond"]},"atoms":{"type":"array","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}}],"items":{"type":"object","properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"}}}}},"required":["name"]}]}},{"$id":"properties-directory/structural/p-norm","$schema":"http://json-schema.org/draft-07/schema#","title":"p_norm","description":"https://en.wikipedia.org/wiki/Norm_(mathematics)#p-norm","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"}}},{"$id":"properties-directory/structural/patterns/functional-group","$schema":"http://json-schema.org/draft-07/schema#","title":"functional group pattern schema","type":"object","properties":{"name":{"enum":["functional_group"]},"atoms":{"type":"array","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}}],"items":{"type":"object","properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"}}}},"SMARTS":{"description":"SMARTS string for classification of FG; https://en.wikipedia.org/wiki/SMILES_arbitrary_target_specification","type":"string"}},"required":["name"]},{"$id":"properties-directory/structural/patterns/ring","$schema":"http://json-schema.org/draft-07/schema#","title":"ring pattern schema","type":"object","properties":{"name":{"enum":["ring"]},"atoms":{"type":"array","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}}],"items":{"type":"object","properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"}}}},"isAromatic":{"type":"boolean"}},"required":["name"]},{"$id":"properties-directory/structural/patterns/special-bond","$schema":"http://json-schema.org/draft-07/schema#","title":"special bond pattern schema","type":"object","description":"Any bonding interaction that cannot be described by simple 2-atom picture, e.g. 3-center-2-electron bond in diborane","properties":{"name":{"enum":["special_bond"]},"atoms":{"type":"array","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}}],"items":{"type":"object","properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"}}}}},"required":["name"]},{"$id":"properties-directory/structural/symmetry","$schema":"http://json-schema.org/draft-07/schema#","title":"symmetry schema","type":"object","properties":{"pointGroupSymbol":{"description":"point group symbol in Schoenflies notation","type":"string"},"spaceGroupSymbol":{"description":"space group symbol in Hermann–Mauguin notation","type":"string"},"tolerance":{"type":"object","description":"tolerance used for symmetry calculation","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"units":{"enum":["angstrom"]}}},"name":{"enum":["symmetry"]}}},{"$id":"properties-directory/structural/volume","$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]}}},{"$id":"properties-directory/workflow/convergence/electronic","$schema":"http://json-schema.org/draft-07/schema#","title":"Convergence electronic property schema","type":"object","properties":{"name":{"enum":["convergence_electronic"]},"units":{"enum":["eV","Ry","hartree"]},"data":{"type":"array","items":{"type":"array","items":{"type":"number"}}}},"required":["data","name","units"]},{"$id":"properties-directory/workflow/convergence/ionic","$schema":"http://json-schema.org/draft-07/schema#","title":"Convergence ionic property schema","type":"object","properties":{"name":{"enum":["convergence_ionic"]},"tolerance":{"description":"for ionic convergence tolerance shows force tolerance"},"units":{"description":"units for force tolerance","enum":["eV"]},"data":{"type":"array","description":"energetic and structural information","items":{"type":"object","properties":{"energy":{"description":"converged electronic energy for this structure (last in `electronic`)","type":"number"},"structure":{"description":"TODO: structural information at each step to be here","type":"object"},"electronic":{"description":"data about electronic at this ionic step","type":"object","properties":{"units":{"description":"units for force tolerance","enum":["eV","Ry","hartree"]},"data":{"type":"array","items":{"type":"number"}}}}},"required":["energy"]}}},"required":["data","name","units"]},{"$id":"properties-directory/workflow/convergence/kpoint","$schema":"http://json-schema.org/draft-07/schema#","title":"convergence schema for converging a property wrt kpoints","type":"object","properties":{"tolerance":{"description":"tolerance for the property under investigation"},"units":{"description":"units for the property under investigation","type":"string"},"property":{"description":"name of the property under investigation","type":"string"},"data":{"type":"array","description":"kpoint grid and property information","items":{"type":"object","properties":{"value":{"description":"value of the property at this step"},"grid":{"description":"information about the kpoint grid","type":"object"},"spacing":{"description":"optional kpoint spacing information","type":"number"}},"required":["value","grid"]}}},"required":["tolerance","units","data"]},{"$id":"property/holder","$schema":"http://json-schema.org/draft-07/schema#","title":"Property holder schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}}],"properties":{"group":{"description":"property group, e.g. qe:dft:gga:pbe","type":"string"},"data":{"description":"container of the information, specific to each property","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Valence band offset property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["valence_band_offset"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Zero point energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["zero_point_energy"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Pressure property schema","description":"average pressure in unit cell","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["pressure"]},"units":{"enum":["kbar","pa"]}},"required":["name","units"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reaction energy barrier property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["reaction_energy_barrier"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Surface energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["surface_energy"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Interfacial energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["interfacial_energy"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Defect formation energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["defect_formation_energy"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Thermal correction to energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["thermal_correction_to_energy"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Thermal correction to enthalpy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["thermal_correction_to_enthalpy"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Total energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["total_energy"]}},"required":["name","units"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Total forces property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["total_force"]},"units":{"enum":["eV/bohr","eV/angstrom","Ry/a.u.","newton","kg*m/s^2","eV/a.u."]}},"required":["name","units"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Fermi energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["fermi_energy"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Formation energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["formation_energy"]}},"required":["name","units"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"HOMO energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["homo_energy"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ionization potential scalar property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["ionization_potential"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"LUMO energy property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]}},"required":["name","units"]}],"properties":{"name":{"enum":["lumo_energy"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Stress tensor property schema","type":"object","properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"minItems":3,"maxItems":3},"name":{"enum":["stress_tensor"]},"units":{"enum":["kbar","pa"]}},"required":["name","value","units"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Band gaps property schema","description":"contains band gap values","type":"object","properties":{"name":{"enum":["band_gaps"]},"values":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"band gap schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"kpointConduction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"kpoint schema","description":"A k-point is a point in reciprocal space of a crystal.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}]},"kpointValence":{"$schema":"http://json-schema.org/draft-07/schema#","title":"kpoint schema","description":"A k-point is a point in reciprocal space of a crystal.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}]},"eigenvalueConduction":{"description":"eigenvalue at k-point in conduction band","type":"number"},"eigenvalueValence":{"description":"eigenvalue at k-point in valence band","type":"number"},"spin":{"type":"number"},"type":{"type":"string","enum":["direct","indirect"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}},"required":["type"]}},"eigenvalues":{"type":"array","items":{"type":"object","properties":{"kpoint":{"$schema":"http://json-schema.org/draft-07/schema#","title":"kpoint schema","description":"A k-point is a point in reciprocal space of a crystal.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}]},"weight":{"type":"number"},"eigenvalues":{"type":"array","items":{"type":"object","properties":{"spin":{"type":"number"},"energies":{"type":"array"},"occupations":{"type":"array"}}}}}}}},"required":["name","values"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Band structure property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["kpoints"]},"units":{"enum":["crystal","cartesian"],"default":"crystal"}}},"yAxis":{"type":"object","properties":{"label":{"enum":["energy"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},"name":{"enum":["band_structure"]},"spin":{"description":"spin of each band","type":"array","items":{"type":"number","enum":[0.5,-0.5]}}},"required":["name","spin","xAxis","yAxis"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Phonon band structure property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["qpoints"]},"units":{"enum":["crystal","cartesian"],"default":"crystal"}}},"yAxis":{"type":"object","properties":{"label":{"enum":["frequency"]},"units":{"enum":["cm-1","THz","meV"]}}},"name":{"enum":["phonon_dispersions"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Total energy contributions property schema","type":"object","properties":{"temperatureEntropy":{"description":"product of temperature and configurational entropy","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["temperature_entropy"]}}},"harris_foulkes":{"description":"non self-consitent energy based on an input charge density","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["harris_foulkes"]}}},"smearing":{"description":"smearing energy","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["smearing"]}}},"one_electron":{"description":"kinetic + pseudopotential energy","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["one_electron"]}}},"hartree":{"description":"energy due to coulomb potential","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["hartree"]}}},"exchange":{"description":"exchange energy","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["exchange"]}}},"exchange_correlation":{"description":"exchange and correlation energy per particle","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["exchange_correlation"]}}},"ewald":{"description":"summation of interaction energies at long length scales due to coloumbic interactions","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["ewald"]}}},"alphaZ":{"description":"divergent electrostatic ion interaction in compensating electron gas","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["alphaZ"]}}},"atomicEnergy":{"description":"kinetic energy of wavefunctions in the atomic limit","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["atomic_energy"]}}},"eigenvalues":{"description":"sum of one electron energies of kinetic, electrostatic, and exchange correlation","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["eigenvalues"]}}},"PAWDoubleCounting2":{"description":"double counting correction 2","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["PAW_double-counting_correction_2"]}}},"PAWDoubleCounting3":{"description":"double counting correction 3","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["PAW_double-counting_correction_3"]}}},"hartreeFock":{"description":"hartree-fock contribution","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"name":{"enum":["hartree_fock"]}}},"name":{"enum":["total_energy_contributions"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Formation energy contributions property schema","description":"Elemental reference total energies used to calculate formation energy.","type":"object","properties":{"name":{"enum":["formation_energy_contributions"]},"values":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Formation energy contribution schema","description":"Total energy contribution of one material used in formation energy calculation.","type":"object","properties":{"formula":{"description":"formula or label for the material used in the formation energy calculation","type":"string"},"n_atoms":{"description":"number of atoms in the material","type":"integer"},"is_elemental":{"description":"whether the material is an elemental reference","type":"boolean"},"total_energy":{"description":"total energy of the material","type":"number"},"total_energy_per_atom":{"description":"total energy per atom of the material","type":"number"},"precision_value":{"description":"precision value for the total energy property","type":"number","default":-1},"precision_metric":{"description":"metric used to report total energy precision","type":"string","enum":["unknown","KPPRA","spacing"],"default":"unknown"}},"required":["formula","n_atoms","is_elemental","total_energy","total_energy_per_atom","precision_metric","precision_value"]}}},"required":["name","values"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Phonon density of states property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["frequency"]},"units":{"enum":["cm-1","THz","meV"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["Phonon DOS"]},"units":{"enum":["states/cm-1","states/THz","states/meV"]}}},"name":{"enum":["phonon_dos"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Potential profile property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["z coordinate"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["energy"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},"name":{"enum":["potential_profile"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Wavefunction amplitude property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["coordinate"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["amplitude"]}}},"name":{"enum":["wavefunction_amplitude"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reaction energy profile property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["reaction coordinate"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["energy"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},"name":{"enum":["reaction_energy_profile"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density of states property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["energy"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["density of states"]},"units":{"enum":["states/unitcell"]}}},"name":{"enum":["density_of_states"]},"legend":{"type":"array","items":{"type":"object","properties":{"element":{"description":"chemical element","type":"string"},"index":{"description":"index inside sub-array of atoms of the same element type","type":"integer"},"electronicState":{"description":"electronic character and shell of PDOS, such as `1s` or `s`, or `total`","type":"string","pattern":"^([1-5]{1})?(s|p|d|f|g).*$"},"spin":{"description":"spin of the electronic state","type":"number","enum":[0.5,-0.5]}}}}},"required":["name","legend"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dielectric tensor property schema","description":"The real and imaginary parts of the diagonal elements of the dieletric tensor","type":"object","properties":{"name":{"enum":["dielectric_tensor"]},"values":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dielectric Tensor","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"","description":"Schema for a function of frequency yielding a nx3 matrix","type":"object","properties":{"frequencies":{"description":"Frequencies","type":"array","items":{"type":"number"}},"components":{"description":"Matrix with 3 columns, e.g. x, y, z","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}],"properties":{"part":{"description":"Real or imaginary part of the dielectric tensor component","type":"string","enum":["real","imaginary"]},"spin":{"type":"number"}},"required":["part","frequencies","components"]}}},"required":["name","values"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"File content property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"name":{"enum":["file_content"]},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string","enum":["image","text","csv"],"$comment":"isGenerative:true"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}}},"required":["name","filetype","objectData"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U parameters property schema","description":"Hubbard U values in eV corresponding to atomic species, orbital and site number.","type":"object","properties":{"name":{"enum":["hubbard_u"]},"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital numeric","description":"Atomic properties per orbital pair with numeric value e.g., Hubbard V parameters.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital","description":"Atomic properties per orbital e.g., Hubbard U parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data numeric properties","description":"Numeric value specific to atomic data","type":"object","properties":{"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}]}],"required":["id","atomicSpecies","orbitalName","value"]}}},"required":["name","values","units"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V parameters property schema","description":"Hubbard V values corresponding to atomic pairs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard parameters reusable schema","description":"Common properties for hubbard parameter schemas","type":"object","properties":{"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair numeric","description":"Atomic properties per orbital pair with numeric value e.g., Hubbard V parameters.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair","description":"Atomic properties per orbital pair e.g., Hubbard V parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"id2":{"type":"integer","description":"Site number or index in the lattice of second site"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"atomicSpecies2":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co2, O"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalName2":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"distance":{"type":"number","description":"Distance between two sites in Bohr."}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data numeric properties","description":"Numeric value specific to atomic data","type":"object","properties":{"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}]}],"required":["id","id2","atomicSpecies","atomicSpecies2","value"]}}},"required":["values","units"]}],"properties":{"name":{"enum":["hubbard_v"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V NN parameters property schema","description":"Hubbard V value in eV for nearest neighbors used in hp.x output parsing","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard parameters reusable schema","description":"Common properties for hubbard parameter schemas","type":"object","properties":{"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair numeric","description":"Atomic properties per orbital pair with numeric value e.g., Hubbard V parameters.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data per orbital pair","description":"Atomic properties per orbital pair e.g., Hubbard V parameters.","type":"object","properties":{"id":{"type":"integer","description":"Site number or index in the lattice"},"id2":{"type":"integer","description":"Site number or index in the lattice of second site"},"atomicSpecies":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co1, Mn"},"atomicSpecies2":{"type":"string","pattern":"^[a-zA-Z]{1,2}[\\d+]?$","description":"Example: Co2, O"},"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalName2":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"distance":{"type":"number","description":"Distance between two sites in Bohr."}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic data numeric properties","description":"Numeric value specific to atomic data","type":"object","properties":{"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}]}],"required":["id","id2","atomicSpecies","atomicSpecies2","value"]}}},"required":["values","units"]}],"properties":{"name":{"enum":["hubbard_v_nn"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Average potential profile property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"properties":{"label":{"enum":["z coordinate"]},"units":{"enum":["km","m","cm","mm","um","nm","angstrom","a.u.","bohr","pm"]}}},"yAxis":{"properties":{"label":{"enum":["energy"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},"name":{"enum":["average_potential_profile"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Charge density profile property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["z coordinate"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["charge density"]},"units":{"enum":["e/A"]}}},"name":{"enum":["charge_density_profile"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Workflow property schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"base workflow schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this workflow (TODO: add enums)","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"isUsingDataset":{"description":"Whether to use the dataset tab in the job designer. Mutually exclusive with using the materials tab.","type":"boolean"},"isMultiMaterial":{"description":"Defines whether the workflow is for a multi-material simulation","type":"boolean"},"subworkflows":{"description":"Array of subworkflows. Subworkflow can be an instance of workflow to allow for nesting","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Mixin Schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this subworkflow","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]},"units":{"description":"Contains the Units of the subworkflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow subworkflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","properties":{"type":{"const":"io"},"subtype":{"enum":["input","output","dataFrame"]},"source":{"enum":["api","object_storage"]},"input":{"type":"array","items":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]}],"discriminator":{"propertyName":"type"}}}},"required":["subtype","source","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","properties":{"type":{"const":"condition"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"statement":{"description":"Condition statement. e.g. 'abs(x-total_energy) < 1e-5'","type":"string"},"then":{"description":"Flowchart ID reference for `then` part of the condition.","type":"string"},"else":{"description":"Flowchart ID reference for `else` part of the condition.","type":"string"},"maxOccurrences":{"description":"Maximum occurrence of the condition, usable for loops.","type":"integer"},"throwException":{"description":"Throw exception on reaching to maximum occurence.","type":"boolean"}},"required":["input","statement","then","else","maxOccurrences"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","properties":{"type":{"const":"assertion"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}},"required":["name","statement"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"scope schema","type":"object","properties":{"scope":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","properties":{"type":{"const":"assignment"},"input":{"description":"Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"operand":{"description":"Name of the global variable. e.g. 'x'","type":"string"},"value":{"description":"Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}},"required":["name","operand","value"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"model":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Any model schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"lda"},"functional":{"enum":["pz","pw","vwn","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"gga"},"functional":{"enum":["pbe","pbesol","pw91","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"hybrid"},"functional":{"enum":["b3lyp","hse06","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML model schema","type":"object","properties":{"type":{"enum":["ml"]},"subtype":{"enum":["re"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unknown model schema","type":"object","properties":{"type":{"enum":["unknown"]},"subtype":{"enum":["unknown"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}},"required":["model","properties","application","units"]}]}},"units":{"description":"Contains the Units of the Workflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit mixin schema","type":"object","properties":{"type":{"const":"map"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","properties":{"target":{"description":"Name of the target variable to substitute using the values below. e.g. K_POINTS","type":"string"},"scope":{"description":"Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.","type":"string"},"name":{"description":"Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.","type":"string"},"values":{"description":"Sequence of values for the target Jinja variable. Optional if `scope` and `name` are given. This can be used for map-reduce type parallel execution","type":"array","items":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"object"}]}},"useValues":{"type":"boolean"}},"required":["target"]}},"required":["input","workflowId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit mixin schema","type":"object","properties":{"type":{"const":"reduce"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","properties":{"operation":{"description":"reduce operation, e.g. aggregate","type":"string"},"arguments":{"description":"arguments which are passed to reduce operation function","type":"array","items":{"type":"string"}}},"required":["operation","arguments"]}}},"required":["mapFlowchartId","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"application":{"description":"information about the main application used for workflow categorization by application in standata.","type":"object","properties":{"name":{"description":"name of the application","type":"string"}}},"tags":{"description":"tags for the workflow","type":"array","items":{"type":"string"}}},"required":["properties","units","subworkflows"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Description schema","type":"object","properties":{"description":{"description":"entity description","type":"string"},"descriptionObject":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"workflows":{"description":"Array of workflows with the same schema as the current one.","type":"array","items":{"type":"object"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]}},"required":["workflows"]}],"properties":{"name":{"enum":["workflow:pyml_predict"]}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Magnetic moments property schema","description":"magnetization on each ion","type":"object","properties":{"name":{"enum":["magnetic_moments"]},"values":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vectors schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vector schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"enum":["uB"]}},"required":["name","values","units"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Atomic forces property schema","description":"coordinates of atoms by ids, vector, unitless","type":"object","properties":{"name":{"enum":["atomic_forces"]},"values":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vectors schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vector schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}]}}}},"units":{"enum":["eV/bohr","eV/angstrom","Ry/a.u.","newton","kg*m/s^2","eV/a.u."]}},"required":["name","units","values"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Convergence electronic property schema","type":"object","properties":{"name":{"enum":["convergence_electronic"]},"units":{"enum":["eV","Ry","hartree"]},"data":{"type":"array","items":{"type":"array","items":{"type":"number"}}}},"required":["data","name","units"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Convergence ionic property schema","type":"object","properties":{"name":{"enum":["convergence_ionic"]},"tolerance":{"description":"for ionic convergence tolerance shows force tolerance"},"units":{"description":"units for force tolerance","enum":["eV"]},"data":{"type":"array","description":"energetic and structural information","items":{"type":"object","properties":{"energy":{"description":"converged electronic energy for this structure (last in `electronic`)","type":"number"},"structure":{"description":"TODO: structural information at each step to be here","type":"object"},"electronic":{"description":"data about electronic at this ionic step","type":"object","properties":{"units":{"description":"units for force tolerance","enum":["eV","Ry","hartree"]},"data":{"type":"array","items":{"type":"number"}}}}},"required":["energy"]}}},"required":["data","name","units"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Is relaxed property schema","type":"object","properties":{"name":{"enum":["is_relaxed"]},"value":{"type":"boolean"},"materialId":{"description":"Material's identity","type":"string"}},"required":["name","value","materialId"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Final structure property schema","type":"object","properties":{"name":{"enum":["final_structure"]},"isRelaxed":{"type":"boolean"},"materialId":{"description":"Material's identity","type":"string"}},"required":["name","isRelaxed","materialId"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hysteresis loop property schema","description":"Response of a sample versus applied bias, combined over the switching cycles measured at each field condition, with the loop parameters read from it","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","properties":{"xDataArray":{"description":"array containing values of x Axis","type":"array","items":{"oneOf":[{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"yDataSeries":{"$schema":"http://json-schema.org/draft-07/schema#","title":"1 dimension data series schema","type":"array","items":{"type":"array","minItems":1,"items":{"type":"number"}}}},"required":["xDataArray","yDataSeries"]}],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}},"required":["label"]}},"required":["xAxis","yAxis"]}],"properties":{"xAxis":{"type":"object","properties":{"label":{"enum":["bias"]},"units":{"enum":["V","mV"]}}},"yAxis":{"type":"object","properties":{"label":{"enum":["response"]},"units":{"enum":["km","m","cm","mm","um","nm","angstrom","a.u.","bohr","pm"]}}},"name":{"enum":["hysteresis_loop"]},"legend":{"description":"the field condition of each series in yDataSeries","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Field condition schema","description":"Whether a switching-spectroscopy reading was taken with the bias applied (on, in-field) or after each pulse at zero bias (off, out-of-field)","type":"string","enum":["on","off"]}},"parameters":{"description":"parameters read from the loop of each field condition; their voltages are in xAxis units and their responses in yAxis units","type":"object","properties":{"on":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hysteresis loop parameters schema","description":"Parameters read from a hysteresis loop, each combined over the loops measured at one field condition. Voltages are in the loop's xAxis units, responses in its yAxis units","type":"object","properties":{"imprint":{"description":"bias at the centre of the loop: half the sum of the two coercive voltages","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}]},"coerciveVoltage":{"description":"bias at which the response crosses the loop's offset, on the rising and the falling branch","type":"object","allOf":[{"type":"object","properties":{"rising":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]},"falling":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}},"required":["rising","falling"]}]},"loopWidth":{"description":"bias separation of the two coercive voltages","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}]},"loopHeight":{"description":"response separation of the two remanent responses","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}]},"remanentResponse":{"description":"response at zero bias, on the rising and the falling branch","type":"object","allOf":[{"type":"object","properties":{"rising":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]},"falling":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}},"required":["rising","falling"]}]}},"required":["imprint","coerciveVoltage","loopWidth","loopHeight","remanentResponse"],"definitions":{"branch-pair":{"type":"object","properties":{"rising":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]},"falling":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}},"required":["rising","falling"]}}},"off":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hysteresis loop parameters schema","description":"Parameters read from a hysteresis loop, each combined over the loops measured at one field condition. Voltages are in the loop's xAxis units, responses in its yAxis units","type":"object","properties":{"imprint":{"description":"bias at the centre of the loop: half the sum of the two coercive voltages","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}]},"coerciveVoltage":{"description":"bias at which the response crosses the loop's offset, on the rising and the falling branch","type":"object","allOf":[{"type":"object","properties":{"rising":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]},"falling":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}},"required":["rising","falling"]}]},"loopWidth":{"description":"bias separation of the two coercive voltages","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}]},"loopHeight":{"description":"response separation of the two remanent responses","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}]},"remanentResponse":{"description":"response at zero bias, on the rising and the falling branch","type":"object","allOf":[{"type":"object","properties":{"rising":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]},"falling":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}},"required":["rising","falling"]}]}},"required":["imprint","coerciveVoltage","loopWidth","loopHeight","remanentResponse"],"definitions":{"branch-pair":{"type":"object","properties":{"rising":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]},"falling":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Combined value schema","description":"A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"value":{"description":"mean over the combined measurements"},"standardDeviation":{"description":"population standard deviation over the combined measurements (not the standard error of the mean)","type":"number"},"count":{"description":"number of measurements combined","type":"integer"}},"required":["standardDeviation","count"]}},"required":["rising","falling"]}}}},"required":["on","off"]}},"required":["name","legend","xAxis","yAxis","parameters"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Jupyter notebook endpoint property schema","type":"object","properties":{"name":{"enum":["jupyter_notebook_endpoint"]},"host":{"type":"string"},"port":{"type":"number"},"token":{"type":"string"}},"required":["name","host","port","token"]}],"discriminator":{"propertyName":"name"}},"source":{"type":"object","properties":{"type":{"description":"Type of the material property's source.","type":"string"},"info":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","type":"object","properties":{"jobId":{"description":"Job's identity","type":"string"},"unitId":{"description":"Id of the unit that extracted the result","type":"string"}},"required":["jobId","unitId"]},{"$schema":"http://json-schema.org/draft-07/schema#","type":"object","properties":{"measurementId":{"description":"Measurement's identity","type":"string"},"sampleId":{"description":"Identity of the sample the result is about","type":"string"},"unitId":{"description":"Id of the unit that extracted the result","type":"string"}},"required":["measurementId","unitId"]}]}},"required":["type","info"]},"exabyteId":{"description":"Id of the corresponding item in the entity bank that this property is obtained for","type":"array","items":{"type":"string"}},"precision":{"type":"object","properties":{"value":{"type":"number"},"metric":{"type":"string"}}},"systemTags":{"description":"property system tags, marks property system characteristics, values refined or best (could be both)","type":"array","items":{"type":"string","enum":["isRefined","isBest"]}},"repetition":{"type":"number"}},"required":["data","source","repetition","exabyteId"]},{"$id":"property/meta-holder","$schema":"http://json-schema.org/draft-07/schema#","title":"Meta property holder schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}}],"properties":{"data":{"description":"container of the information, specific to each property","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"File data item","type":"object","properties":{"element":{"type":"string","description":"chemical element"},"hash":{"type":"string","description":"MD5 hash of the pseudopotential file"},"type":{"enum":["us","nc","nc-fr","paw","coulomb"]},"source":{"type":"string","description":"explains where this came from"},"version":{"type":"string","description":"explains the version of where this came from"},"exchangeCorrelation":{"type":"object","properties":{"approximation":{"description":"DFT approximation","type":"string"},"functional":{"description":"Exchange correlation functional","type":"string"},"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}},"valenceConfiguration":{"type":"array","description":"contains pseudo orbital information, including orbital names and occupations","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic orbital schema","type":"object","properties":{"orbitalName":{"type":"string","pattern":"^[1-7][sSpPdDfF]$"},"orbitalIndex":{"type":"integer","minimum":1},"principalNumber":{"type":"integer","minimum":1,"maximum":7},"angularMomentum":{"type":"integer","minimum":0,"maximum":3},"occupation":{"type":"number","description":"Shell occupation","minimum":0,"maximum":14}}}},"path":{"type":"string","description":"location of the pseudopotential file on filesystem"},"apps":{"type":"array","description":"The names of the simulation engines that can use this pseudopotential, e.g. espresso","items":{"type":"string"}},"filename":{"type":"string","description":"filename of pseudopotential file on filesystem"},"name":{"type":"string","description":"name of the data category","enum":["pseudopotential"]},"cutoffs":{"type":"object","description":"Suggested cutoff values for wave function and charge density.","additionalProperties":false,"properties":{"wavefunction":{"type":"array","description":"Energy cutoff values for wavefunction plane wave expansion.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for energy value with unit corresponding to a specific accuracy level, e.g., used for suggested wavefunction and charge density cutoffs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for scalar values with accuracy levels","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]}},"required":["accuracy_level"]}],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]}},"required":["unit"]}},"density":{"type":"array","description":"Energy cutoff values for charge density plane wave expansion.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for energy value with unit corresponding to a specific accuracy level, e.g., used for suggested wavefunction and charge density cutoffs","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reusable schema for scalar values with accuracy levels","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","properties":{"value":{"type":"number"}},"required":["value"]}],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]}},"required":["accuracy_level"]}],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]}},"required":["unit"]}}}}},"required":["element","type","exchangeCorrelation","source","path","apps","name","hash"]}]},"source":{"type":"object","properties":{"type":{"description":"Type of the material property's source.","type":"string"},"info":{"type":"object"}},"required":["type"]}},"required":["data","source"]},{"$id":"property/proto-holder","$schema":"http://json-schema.org/draft-07/schema#","title":"Proto property holder schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}}],"properties":{"data":{"description":"container of the information, specific to each property","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraints property schema","description":"atomic constraints property schema (as stored in a database)","type":"object","properties":{"name":{"enum":["atomic_constraints"]},"values":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraints schema","description":"atomic constraints schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"atomic constraint schema","description":"constraint of atoms by ids, used to constraint the position etc.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","properties":{"id":{"description":"integer id of this entry","type":"integer"}},"required":["id"]}],"properties":{"value":{"description":"value of this entry"}},"required":["id","value"]}],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector boolean 3d schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 boolean elements schema","type":"array","items":{"type":"boolean"},"minItems":3,"maxItems":3}]}}}}},"required":["name","values"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundary conditions property schema","description":"boundary conditions property schema (as stored in a database)","type":"object","properties":{"name":{"enum":["boundary_conditions"]},"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"}},"required":["name","type","offset"]}]},"source":{"type":"object","properties":{"type":{"description":"Type of the material property's source.","type":"string"},"info":{"type":"object","properties":{"materialId":{"type":"string"}}}},"required":["type","info"]}},"required":["data","source"]},{"$id":"property/source","$schema":"http://json-schema.org/draft-07/schema#","title":"Property source schema","type":"object","properties":{"type":{"description":"Type of the material property's source.","type":"string"},"url":{"description":"Internet address of the reference.","type":"string"},"info":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","type":"object","properties":{"jobId":{"description":"Job's identity","type":"string"},"unitId":{"description":"Id of the unit that extracted the result","type":"string"}},"required":["jobId","unitId"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"info for characteristic obtained by experiment","type":"object","properties":{"type":{"enum":["experiment"]},"authors":{"description":"experiment authors","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"title":{"type":"string","description":"experiment title"},"method":{"type":"string","description":"method used in experiment"},"conditions":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition schema","type":"object","properties":{"units":{"description":"condition unit","type":"string"},"scalar":{"description":"array of condition values","type":"array","items":{"type":"object","properties":{"value":{"type":"string"}}}},"name":{"description":"human-readable name of the condition","type":"string"}},"required":["name"]}},"location":{"$schema":"http://json-schema.org/draft-07/schema#","title":"location schema","type":"object","properties":{"latitude":{"description":"location latitude","type":"number"},"longitude":{"description":"location longitude","type":"number"}},"required":["latitude","longitude"]},"timestamp":{"description":"epoch time.","type":"number"},"note":{"description":"Note about experiment","type":"string"},"references":{"type":"array","description":"references to literature articles","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"literature reference schema","type":"object","properties":{"type":{"enum":["literature"]},"doi":{"type":"string","description":"Digital Object Identifier of the reference."},"isbn":{"type":"string","description":"International Standard Book Number of the reference."},"issn":{"type":"string","description":"International Standard Serial Number of the reference."},"url":{"type":"string","description":"Internet address of the reference."},"title":{"type":"string","description":"Title of the work."},"publisher":{"type":"string","description":"Publisher of the work."},"journal":{"type":"string","description":"Journal in which the work appeared."},"volume":{"type":"string","description":"Volume of the series in which the work appeared."},"year":{"type":"string","description":"Year in which the reference was published."},"issue":{"type":"string","description":"Issue of the collection in which the work appeared."},"pages":{"type":"object","description":"Start and end pages of the work.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start"]}]},"authors":{"type":"array","description":"List of authors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"editors":{"type":"array","description":"List of editors of the work.","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}},"required":["first","last"]}},"reference":{"type":"array","items":{"type":"object"},"description":"References cited by the work. Reference objects can nest as deeply as needed. This is useful, for example, when tracking the history of a value referenced in a scholarly article; the top level reference would contain information about where the data was accessed while the nested reference would contain information about where it was originally published."}}}}},"required":["conditions","authors","title","method","timestamp"]}]}},"required":["info"]},{"$id":"sample","$schema":"http://json-schema.org/draft-07/schema#","title":"sample schema","description":"A physical specimen at a fixed position on a substrate: the entity an experimental result is about. It has no crystal structure of its own; a material it is later matched to is referenced from its properties.","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable has metadata in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}}]}],"properties":{"label":{"description":"Identity of the sample on its substrate, e.g. the grid label r0c00 of a contact pad","type":"string"},"position":{"description":"Position of the sample in the substrate frame, when it is a site on a larger specimen","type":"object","properties":{"coordinates":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","items":{"type":"number"},"minItems":2,"maxItems":2},"units":{"enum":["km","m","cm","mm","um","nm","angstrom","a.u.","bohr","pm"]}},"required":["coordinates","units"]}},"required":["label"]},{"$id":"software/application/build-config","$schema":"http://json-schema.org/draft-07/schema#","title":"application versions with build config schema","type":"object","properties":{"bio":{"description":"The bio description used for the module files.","type":"string"},"moduleName":{"description":"Modulefile name specific to application version and build type.","type":"string"},"imageName":{"description":"Apptainer image name.","type":"string"},"imageTag":{"description":"Apptainer image tag.","type":"string"},"dependencies":{"description":"List of modulefile dependencies.","type":"array","items":{"type":"string"}},"environmentVariables":{"description":"Environment variables to be exported before running the application, containing the key and value pairs.","type":"object"},"prependVariables":{"description":"Variables to be prepended to the existing environment variable before running the application, containing the key and value pairs, e.g., PATH, LD_LIBRARY_PATH, etc.","type":"object"}}},{"$id":"software/application","$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},{"$id":"software/application-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]},{"$id":"software/application-with-build-config","$schema":"http://json-schema.org/draft-07/schema#","title":"application with build config schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]}],"properties":{"buildConfig":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application versions with build config schema","type":"object","properties":{"bio":{"description":"The bio description used for the module files.","type":"string"},"moduleName":{"description":"Modulefile name specific to application version and build type.","type":"string"},"imageName":{"description":"Apptainer image name.","type":"string"},"imageTag":{"description":"Apptainer image tag.","type":"string"},"dependencies":{"description":"List of modulefile dependencies.","type":"array","items":{"type":"string"}},"environmentVariables":{"description":"Environment variables to be exported before running the application, containing the key and value pairs.","type":"object"},"prependVariables":{"description":"Variables to be prepended to the existing environment variable before running the application, containing the key and value pairs, e.g., PATH, LD_LIBRARY_PATH, etc.","type":"object"}}}}},{"$id":"software/executable","$schema":"http://json-schema.org/draft-07/schema#","title":"executable schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},{"$id":"software/executable-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]},{"$id":"software/flavor","$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},{"$id":"software/flavor-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]},{"$id":"software/template","$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},{"$id":"software/template-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]},{"$id":"software-directory/modeling/deepmd","$schema":"http://json-schema.org/draft-07/schema#","title":"DeePMD app schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]}],"properties":{"name":{"enum":["deepmd"]},"summary":{"enum":["DeePMD is a deep learning package that is based on neural network fitted first-principles data for many-body potential energy representation and molecular dynamics"]},"version":{"enum":["2.0.2"]},"exec":{"enum":["dp","lmp","python"]}}},{"$id":"software-directory/modeling/espresso/arguments","$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false},{"$id":"software-directory/modeling/espresso","$schema":"http://json-schema.org/draft-07/schema#","title":"espresso app schema","type":"object","properties":{"name":{"enum":["espresso"]},"summary":{"enum":["Quantum Espresso"]},"version":{"enum":["5.2.1","5.4.0","6.0.0","6.3","6.4.1","6.5.0","6.6.0","6.7.0","6.8.0","7.0","7.2","7.3"]}}},{"$id":"software-directory/modeling/lammps","$schema":"http://json-schema.org/draft-07/schema#","title":"LAMMPS","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]}],"properties":{"name":{"enum":["lammps"]},"summary":{"enum":["LAMMPS"]},"version":{"enum":["2025.07.22.2"]},"build":{"enum":["GNU","Intel","CUDA"]},"exec":{"enum":["lmp"]}}},{"$id":"software-directory/modeling/nwchem","$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]}],"properties":{"name":{"enum":["NWChem"]},"summary":{"enum":["NWChem: a comprehensive and scalable open-source solution for large scale molecular simulations"]},"version":{"enum":["6.6","7.0.2"]},"exec":{"enum":["nwchem"]}}},{"$id":"software-directory/modeling/unit/execution","$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema for physics-based simulation engines (defined using espresso as example)","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input schema","type":"object","properties":{"input":{"title":"execution unit input schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}]}}}}]},{"$id":"software-directory/modeling/vasp","$schema":"http://json-schema.org/draft-07/schema#","title":"vienna ab-inito simulation package","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]}],"properties":{"name":{"enum":["vasp"]},"summary":{"enum":["vienna ab-initio simulation package"]},"flavor":{"enum":["vasp","vasp_nscf","vasp_bands"]},"version":{"enum":["5.3.5"]},"exec":{"enum":["vasp"]}}},{"$id":"software-directory/scripting/jupyter-lab","$schema":"http://json-schema.org/draft-07/schema#","title":"Jupyter Lab Application Schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]}],"properties":{"name":{"enum":["jupyterLab"]},"flavor":{"enum":["notebook"]},"summary":{"enum":["Jupyter Lab"]},"version":{"enum":["0.33.12"]},"exec":{"enum":["jupyter"]}}},{"$id":"software-directory/scripting/python","$schema":"http://json-schema.org/draft-07/schema#","title":"Python Programing Language Schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]}],"properties":{"name":{"enum":["python"]},"flavor":{"enum":["python2","python3"]},"summary":{"enum":["Python Script"]},"version":{"enum":["2.7.5","3.6.1"]},"exec":{"enum":["python"]},"arguments":{"description":"Optional arguments passed to the Python script","type":"string"},"environment":{"description":"Optional environment variables exported before running the Python script","type":"object"},"dependencies":{"description":"Optional Python dependencies, e.g. amqp==1.4.6","type":"array"}}},{"$id":"software-directory/scripting/shell","$schema":"http://json-schema.org/draft-07/schema#","title":"Shell Scripting Language Schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]}],"properties":{"name":{"enum":["shell"]},"flavor":{"enum":["sh","bash","zsh","csh"]},"summary":{"enum":["Shell Script"]},"version":{"enum":["4.2.46"]},"exec":{"enum":["sh","bash","zsh","csh"]},"arguments":{"description":"Optional arguments passed to the Shell script","type":"string"},"environment":{"description":"Optional environment variables exported before running the Shell script","type":"object"}}},{"$id":"software-directory/scripting/unit/execution","$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema for scripting-based applications","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input schema","type":"object","properties":{"input":{"title":"execution unit input schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}]}}}}]},{"$id":"system/-material","$schema":"http://json-schema.org/draft-07/schema#","title":"Material entity reference schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}],"properties":{"cls":{"description":"Material class","type":"string","enum":["Material"]}}},{"$id":"system/-parent-job","$schema":"http://json-schema.org/draft-07/schema#","title":"Parent job entity reference schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}],"properties":{"cls":{"description":"Job class","type":"string","enum":["Job"]}}},{"$id":"system/-project","$schema":"http://json-schema.org/draft-07/schema#","title":"Project entity reference schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}],"properties":{"cls":{"description":"Project class","type":"string","enum":["Project"]}}},{"$id":"system/bankable","$schema":"http://json-schema.org/draft-07/schema#","title":"bankable schema","type":"object","properties":{"exabyteId":{"description":"Identity of the corresponding bank entity","type":"string"}},"required":["exabyteId"]},{"$id":"system/consistency-check","$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]},{"$id":"system/creator","$schema":"http://json-schema.org/draft-07/schema#","title":"Creator entity reference schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}],"properties":{"cls":{"description":"Creator class","type":"string","enum":["User"]}},"required":["cls"]},{"$id":"system/creator-account","$schema":"http://json-schema.org/draft-07/schema#","title":"creator account schema","type":"object","properties":{"creatorAccount":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}},"required":["creatorAccount"]},{"$id":"system/database-source","$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","properties":{"id":{"description":"ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32","oneOf":[{"type":"string"},{"type":"number"}]},"source":{"description":"Third party source name, e.g. materials project, 2dmatpedia, ICSD, etc.","type":"string"},"origin":{"description":"Deprecated. To be removed. A flag that is true when material is initially imported from a third party * (as opposed to being independently designed from scratch).","type":"boolean"},"data":{"description":"Original response from external source.","type":"object"},"doi":{"description":"Digital Object Identifier, e.g. 10.1088/0953-8984/25/10/105506","type":"string"},"url":{"description":"The URL of the original record, e.g. https://next-gen.materialsproject.org/materials/mp-48; ToDo: update to use URI type per https://json-schema.org/understanding-json-schema/reference/string#resource-identifiers","type":"string"}},"required":["id","source","origin"]},{"$id":"system/defaultable","$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}},{"$id":"system/description","$schema":"http://json-schema.org/draft-07/schema#","title":"Description schema","type":"object","properties":{"description":{"description":"entity description","type":"string"},"descriptionObject":{"type":"object"}}},{"$id":"system/entity-reference","$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]},{"$id":"system/file-source","$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","properties":{"extension":{"description":"file extension","type":"string"},"filename":{"description":"file name without extension","type":"string"},"text":{"description":"file content as raw text","type":"string"},"hash":{"description":"MD5 hash based on file content","type":"string"}},"required":["filename","text","hash"]},{"$id":"system/has-consistency-check","$schema":"http://json-schema.org/draft-07/schema#","title":"Has consistency check schema","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"consistencyChecks":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"consistency check","type":"object","description":"The output of consistency checks performed on data adhering to JSON schema, but inconsistent with scientific or logical rules, to show problems in UI.","properties":{"key":{"type":"string","description":"Key of the property of the entity on which the consistency check is performed in Mongo dot notation, e.g. 'basis.coordinates.1'"},"name":{"type":"string","description":"Name of the consistency check that is performed, which is listed in an enum."},"severity":{"enum":["info","warning","error"],"description":"Severity level of the problem, which is used in UI to differentiate."},"message":{"type":"string","description":"Message generated by the consistency check describing the problem."}},"required":["key","name","severity","message"]}}}},{"$id":"system/hashed","$schema":"http://json-schema.org/draft-07/schema#","title":"hashed schema","type":"object","properties":{"hash":{"description":"Hash string which is calculated based on the meaningful fields of the entity. Used to identify equal entities.","type":"string"}},"required":["hash"]},{"$id":"system/history","$schema":"http://json-schema.org/draft-07/schema#","title":"history schema","type":"object","properties":{"history":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"revision":{"type":"number"}},"required":["id","revision"]}}}},{"$id":"system/iframe-message","$schema":"http://json-schema.org/draft-07/schema#","title":"iframe message schema","description":"communication message between iframe and the parent window.","type":"object","properties":{"type":{"description":"The type of the message to distinguish the direction of the message.","type":"string","enum":["from-iframe-to-host","from-host-to-iframe"],"tsEnumNames":["fromIframeToHost","fromHostToIframe"]},"action":{"description":"The action to be performed upon receiving the message.","type":"string","enum":["set-data","get-data","info"],"tsEnumNames":["setData","getData","info"]},"payload":{"description":"The content of the message with actual data.","type":"object"}},"required":["type","action","payload"]},{"$id":"system/in-set","$schema":"http://json-schema.org/draft-07/schema#","title":"System in-set schema","type":"object","properties":{"inSet":{"type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]},{"type":"object","properties":{"type":{"type":"string"},"index":{"type":"number"}}}]}}},"required":["inSet"]},{"$id":"system/is-multi-material","$schema":"http://json-schema.org/draft-07/schema#","title":"is multi schema","type":"object","properties":{"isMultiMaterial":{"type":"boolean"}}},{"$id":"system/is-outdated","$schema":"http://json-schema.org/draft-07/schema#","title":"is outdated schema","type":"object","properties":{"isOutdated":{"type":"boolean"}}},{"$id":"system/job-extended","$schema":"http://json-schema.org/draft-07/schema#","title":"extended job schema","type":"object","properties":{"mode":{"type":"string"},"isExternal":{"type":"boolean"},"_materials":{"type":"array","items":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}]}},"_materialsSet":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}]},"purged":{"type":"boolean"},"purgedAt":{"type":"number"},"dataset":{"type":"object"}}},{"$id":"system/message","$schema":"http://json-schema.org/draft-07/schema#","title":"message schema","description":"communication message between Rupy and web application.","type":"object","properties":{"header":{"type":"object","properties":{"entity":{"type":"object","properties":{"_id":{"description":"job identifier","type":"string"},"name":{"description":"entity name.","type":"string","enum":["job","unit"]},"flowchartId":{"description":"unit identifier within the workflow","type":"string"},"probe":{"description":"source of the message.","type":"string","enum":["monitor","postprocessor"]}},"required":["_id","name"]},"version":{"description":"Rupy-Webapp communication schema version.","type":"string"},"timestamp":{"description":"Timestamp of the message.","type":"number"}},"required":["entity","version","timestamp"]},"payload":{"description":"Actual payload of the message.","type":"object"}},"required":["header","payload"]},{"$id":"system/metadata","$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}},{"$id":"system/name","$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$id":"system/owner","$schema":"http://json-schema.org/draft-07/schema#","title":"Entity owner reference schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}},"required":["_id"]}],"properties":{"cls":{"description":"Entity owner class","type":"string","enum":["Account"]}},"required":["cls"]},{"$id":"system/path","$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}},{"$id":"system/path-entity","$schema":"http://json-schema.org/draft-07/schema#","title":"path entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path schema","type":"object","properties":{"path":{"$schema":"http://json-schema.org/draft-07/schema#","title":"category path schema","description":"TODO: Use regex once schema draft version has been updated","type":"string"}}}]},{"$id":"system/runtime-item","$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true},{"$id":"system/runtime-items","$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$id":"system/schema-version","$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}},{"$id":"system/scope","$schema":"http://json-schema.org/draft-07/schema#","title":"scope schema","type":"object","properties":{"scope":{"type":"string"}}},{"$id":"system/set","$schema":"http://json-schema.org/draft-07/schema#","title":"Entity set schema","type":"object","properties":{"isEntitySet":{"type":"boolean"},"entitySetType":{"type":"string"},"entityCls":{"type":"string"}}},{"$id":"system/sharing","$schema":"http://json-schema.org/draft-07/schema#","title":"extended sharing schema","type":"object","properties":{"sharedCount":{"type":"number"}}},{"$id":"system/soft-removable","$schema":"http://json-schema.org/draft-07/schema#","title":"soft removable entity schema","type":"object","properties":{"removedAt":{"description":"Timestamp of the moment when entity was removed","type":"string"},"removed":{"description":"Identifies that entity was removed","type":"boolean"}}},{"$id":"system/status","$schema":"http://json-schema.org/draft-07/schema#","title":"status schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}}],"properties":{"status":{"type":"string"}}},{"$id":"system/status-track","$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$id":"system/tags","$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"system/timestampable","$schema":"http://json-schema.org/draft-07/schema#","title":"timestampable entity schema","type":"object","properties":{"createdAt":{"description":"entity creation time","type":"string","format":"date-time"},"updatedAt":{"description":"entity last modification time","type":"string","format":"date-time"},"createdBy":{"type":"string"},"updatedBy":{"type":"string"}}},{"$id":"system/use-values","$schema":"http://json-schema.org/draft-07/schema#","title":"use values schema","type":"object","properties":{"useValues":{"type":"boolean"}}},{"$id":"workflow/base","$schema":"http://json-schema.org/draft-07/schema#","title":"base workflow schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this workflow (TODO: add enums)","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"isUsingDataset":{"description":"Whether to use the dataset tab in the job designer. Mutually exclusive with using the materials tab.","type":"boolean"},"isMultiMaterial":{"description":"Defines whether the workflow is for a multi-material simulation","type":"boolean"},"subworkflows":{"description":"Array of subworkflows. Subworkflow can be an instance of workflow to allow for nesting","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Mixin Schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this subworkflow","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]},"units":{"description":"Contains the Units of the subworkflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow subworkflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","properties":{"type":{"const":"io"},"subtype":{"enum":["input","output","dataFrame"]},"source":{"enum":["api","object_storage"]},"input":{"type":"array","items":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]}],"discriminator":{"propertyName":"type"}}}},"required":["subtype","source","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","properties":{"type":{"const":"condition"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"statement":{"description":"Condition statement. e.g. 'abs(x-total_energy) < 1e-5'","type":"string"},"then":{"description":"Flowchart ID reference for `then` part of the condition.","type":"string"},"else":{"description":"Flowchart ID reference for `else` part of the condition.","type":"string"},"maxOccurrences":{"description":"Maximum occurrence of the condition, usable for loops.","type":"integer"},"throwException":{"description":"Throw exception on reaching to maximum occurence.","type":"boolean"}},"required":["input","statement","then","else","maxOccurrences"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","properties":{"type":{"const":"assertion"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}},"required":["name","statement"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"scope schema","type":"object","properties":{"scope":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","properties":{"type":{"const":"assignment"},"input":{"description":"Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"operand":{"description":"Name of the global variable. e.g. 'x'","type":"string"},"value":{"description":"Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}},"required":["name","operand","value"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"model":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Any model schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"lda"},"functional":{"enum":["pz","pw","vwn","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"gga"},"functional":{"enum":["pbe","pbesol","pw91","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"hybrid"},"functional":{"enum":["b3lyp","hse06","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML model schema","type":"object","properties":{"type":{"enum":["ml"]},"subtype":{"enum":["re"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unknown model schema","type":"object","properties":{"type":{"enum":["unknown"]},"subtype":{"enum":["unknown"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}},"required":["model","properties","application","units"]}]}},"units":{"description":"Contains the Units of the Workflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit mixin schema","type":"object","properties":{"type":{"const":"map"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","properties":{"target":{"description":"Name of the target variable to substitute using the values below. e.g. K_POINTS","type":"string"},"scope":{"description":"Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.","type":"string"},"name":{"description":"Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.","type":"string"},"values":{"description":"Sequence of values for the target Jinja variable. Optional if `scope` and `name` are given. This can be used for map-reduce type parallel execution","type":"array","items":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"object"}]}},"useValues":{"type":"boolean"}},"required":["target"]}},"required":["input","workflowId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit mixin schema","type":"object","properties":{"type":{"const":"reduce"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","properties":{"operation":{"description":"reduce operation, e.g. aggregate","type":"string"},"arguments":{"description":"arguments which are passed to reduce operation function","type":"array","items":{"type":"string"}}},"required":["operation","arguments"]}}},"required":["mapFlowchartId","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"application":{"description":"information about the main application used for workflow categorization by application in standata.","type":"object","properties":{"name":{"description":"name of the application","type":"string"}}},"tags":{"description":"tags for the workflow","type":"array","items":{"type":"string"}}},"required":["properties","units","subworkflows"]},{"$id":"workflow/base-flow","$schema":"http://json-schema.org/draft-07/schema#","title":"BaseFlow","type":"object","properties":{"_id":{"description":"subworkflow identity","type":"string"},"name":{"description":"Human-readable name of the subworkflow. e.g. Total-energy","type":"string"},"properties":{"description":"Array of characteristic properties calculated by this subworkflow","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]}},"required":["name","units"]},{"$id":"workflow/scope","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow scope schema","type":"object","properties":{"global":{"type":"object","additionalProperties":true},"local":{"type":"object","additionalProperties":true}},"required":["global","local"]},{"$id":"workflow/subworkflow/convergence/enum-options","definitions":{"ConvergenceParameterNameEnum":{"type":"string","enum":["N_k","N_k_nonuniform","N_k_nonuniform_2D"],"tsEnumNames":["N_k","N_k_nonuniform","N_k_nonuniform_2D"]}}},{"$id":"workflow/subworkflow/mixin","$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Mixin Schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this subworkflow","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]},"units":{"description":"Contains the Units of the subworkflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow subworkflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","properties":{"type":{"const":"io"},"subtype":{"enum":["input","output","dataFrame"]},"source":{"enum":["api","object_storage"]},"input":{"type":"array","items":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]}],"discriminator":{"propertyName":"type"}}}},"required":["subtype","source","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","properties":{"type":{"const":"condition"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"statement":{"description":"Condition statement. e.g. 'abs(x-total_energy) < 1e-5'","type":"string"},"then":{"description":"Flowchart ID reference for `then` part of the condition.","type":"string"},"else":{"description":"Flowchart ID reference for `else` part of the condition.","type":"string"},"maxOccurrences":{"description":"Maximum occurrence of the condition, usable for loops.","type":"integer"},"throwException":{"description":"Throw exception on reaching to maximum occurence.","type":"boolean"}},"required":["input","statement","then","else","maxOccurrences"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","properties":{"type":{"const":"assertion"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}},"required":["name","statement"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"scope schema","type":"object","properties":{"scope":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","properties":{"type":{"const":"assignment"},"input":{"description":"Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"operand":{"description":"Name of the global variable. e.g. 'x'","type":"string"},"value":{"description":"Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}},"required":["name","operand","value"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"model":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Any model schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"lda"},"functional":{"enum":["pz","pw","vwn","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"gga"},"functional":{"enum":["pbe","pbesol","pw91","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"hybrid"},"functional":{"enum":["b3lyp","hse06","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML model schema","type":"object","properties":{"type":{"enum":["ml"]},"subtype":{"enum":["re"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unknown model schema","type":"object","properties":{"type":{"enum":["unknown"]},"subtype":{"enum":["unknown"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}},"required":["model","properties","application","units"]},{"$id":"workflow/subworkflow/unit","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow subworkflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","properties":{"type":{"const":"io"},"subtype":{"enum":["input","output","dataFrame"]},"source":{"enum":["api","object_storage"]},"input":{"type":"array","items":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]}],"discriminator":{"propertyName":"type"}}}},"required":["subtype","source","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","properties":{"type":{"const":"condition"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"statement":{"description":"Condition statement. e.g. 'abs(x-total_energy) < 1e-5'","type":"string"},"then":{"description":"Flowchart ID reference for `then` part of the condition.","type":"string"},"else":{"description":"Flowchart ID reference for `else` part of the condition.","type":"string"},"maxOccurrences":{"description":"Maximum occurrence of the condition, usable for loops.","type":"integer"},"throwException":{"description":"Throw exception on reaching to maximum occurence.","type":"boolean"}},"required":["input","statement","then","else","maxOccurrences"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","properties":{"type":{"const":"assertion"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}},"required":["name","statement"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"scope schema","type":"object","properties":{"scope":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","properties":{"type":{"const":"assignment"},"input":{"description":"Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"operand":{"description":"Name of the global variable. e.g. 'x'","type":"string"},"value":{"description":"Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}},"required":["name","operand","value"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]},{"$id":"workflow/subworkflow","$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Mixin Schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this subworkflow","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]},"units":{"description":"Contains the Units of the subworkflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow subworkflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","properties":{"type":{"const":"io"},"subtype":{"enum":["input","output","dataFrame"]},"source":{"enum":["api","object_storage"]},"input":{"type":"array","items":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]}],"discriminator":{"propertyName":"type"}}}},"required":["subtype","source","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","properties":{"type":{"const":"condition"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"statement":{"description":"Condition statement. e.g. 'abs(x-total_energy) < 1e-5'","type":"string"},"then":{"description":"Flowchart ID reference for `then` part of the condition.","type":"string"},"else":{"description":"Flowchart ID reference for `else` part of the condition.","type":"string"},"maxOccurrences":{"description":"Maximum occurrence of the condition, usable for loops.","type":"integer"},"throwException":{"description":"Throw exception on reaching to maximum occurence.","type":"boolean"}},"required":["input","statement","then","else","maxOccurrences"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","properties":{"type":{"const":"assertion"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}},"required":["name","statement"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"scope schema","type":"object","properties":{"scope":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","properties":{"type":{"const":"assignment"},"input":{"description":"Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"operand":{"description":"Name of the global variable. e.g. 'x'","type":"string"},"value":{"description":"Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}},"required":["name","operand","value"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"model":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Any model schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"lda"},"functional":{"enum":["pz","pw","vwn","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"gga"},"functional":{"enum":["pbe","pbesol","pw91","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"hybrid"},"functional":{"enum":["b3lyp","hse06","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML model schema","type":"object","properties":{"type":{"enum":["ml"]},"subtype":{"enum":["re"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unknown model schema","type":"object","properties":{"type":{"enum":["unknown"]},"subtype":{"enum":["unknown"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}},"required":["model","properties","application","units"]}]},{"$id":"workflow/unit/assertion","$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","properties":{"type":{"const":"assertion"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}},"required":["name","statement"]}]},{"$id":"workflow/unit/assignment","$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"scope schema","type":"object","properties":{"scope":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","properties":{"type":{"const":"assignment"},"input":{"description":"Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"operand":{"description":"Name of the global variable. e.g. 'x'","type":"string"},"value":{"description":"Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}},"required":["name","operand","value"]}]},{"$id":"workflow/unit/base","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$id":"workflow/unit/condition","$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","properties":{"type":{"const":"condition"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"statement":{"description":"Condition statement. e.g. 'abs(x-total_energy) < 1e-5'","type":"string"},"then":{"description":"Flowchart ID reference for `then` part of the condition.","type":"string"},"else":{"description":"Flowchart ID reference for `else` part of the condition.","type":"string"},"maxOccurrences":{"description":"Maximum occurrence of the condition, usable for loops.","type":"integer"},"throwException":{"description":"Throw exception on reaching to maximum occurence.","type":"boolean"}},"required":["input","statement","then","else","maxOccurrences"]}]},{"$id":"workflow/unit/context/-base","$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]},{"$id":"workflow/unit/context/-extra-data-material-hash","$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}},{"$id":"workflow/unit/context/item/boundaryConditions","$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$id":"workflow/unit/context/item/collinearMagnetization","$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$id":"workflow/unit/context/item/cutoffs","$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$id":"workflow/unit/context/item/dynamics","$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$id":"workflow/unit/context/item/grid","$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$id":"workflow/unit/context/item/hubbard-j","$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$id":"workflow/unit/context/item/hubbard-legacy","$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$id":"workflow/unit/context/item/hubbard-u","$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$id":"workflow/unit/context/item/hubbard-v","$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$id":"workflow/unit/context/item/input","$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$id":"workflow/unit/context/item/mlSettings","$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$id":"workflow/unit/context/item/mlTrainTestSplit","$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$id":"workflow/unit/context/item/neb","$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$id":"workflow/unit/context/item/nonCollinearMagnetization","$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$id":"workflow/unit/context/item/path","$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$id":"workflow/unit/context/item","$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}},{"$id":"workflow/unit/error","$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]},{"$id":"workflow/unit/execution","$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$id":"workflow/unit/input/-input","$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input schema","type":"object","properties":{"input":{"title":"execution unit input schema","type":"array","items":{"oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}]}}}},{"$id":"workflow/unit/input/-inputItem","$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]},{"$id":"workflow/unit/input/-inputItemId","$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]},{"$id":"workflow/unit/input/-inputItemScope","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]},{"$id":"workflow/unit/input/-map-input/values","$schema":"http://json-schema.org/draft-07/schema#","title":"Unit values schema","type":"object","properties":{"values":{"type":"string"}}},{"$id":"workflow/unit/input/-map-input","$schema":"http://json-schema.org/draft-07/schema#","title":"Unit map input schema","type":"object","properties":{"target":{"type":"string"},"values":{"type":"array","items":{"oneOf":[{"type":"number"},{"type":"string"},{"type":"object"}]}},"useValues":{"type":"boolean"},"scope":{"type":"string"},"name":{"type":"string"}}},{"$id":"workflow/unit/io/api","$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$id":"workflow/unit/io/db-collection","$schema":"http://json-schema.org/draft-07/schema#","title":"data IO database collection input/output schema (not used)","type":"object","properties":{"type":{"const":"db_collection"},"collection":{"description":"db collection name","type":"string"},"draft":{"description":"whether the result should be saved as draft","type":"boolean"}},"required":["type","collection","draft"]},{"$id":"workflow/unit/io/db-ids","$schema":"http://json-schema.org/draft-07/schema#","title":"data IO database ids input/output schema (not used)","type":"object","properties":{"type":{"const":"db_ids"},"ids":{"description":"IDs of item to retrieve from db","type":"array","items":{"type":"string"}}},"required":["type","ids"]},{"$id":"workflow/unit/io/object-storage","$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]},{"$id":"workflow/unit/io","$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","properties":{"type":{"const":"io"},"subtype":{"enum":["input","output","dataFrame"]},"source":{"enum":["api","object_storage"]},"input":{"type":"array","items":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]}],"discriminator":{"propertyName":"type"}}}},"required":["subtype","source","input"]}]},{"$id":"workflow/unit/map","$schema":"http://json-schema.org/draft-07/schema#","title":"map unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit mixin schema","type":"object","properties":{"type":{"const":"map"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","properties":{"target":{"description":"Name of the target variable to substitute using the values below. e.g. K_POINTS","type":"string"},"scope":{"description":"Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.","type":"string"},"name":{"description":"Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.","type":"string"},"values":{"description":"Sequence of values for the target Jinja variable. Optional if `scope` and `name` are given. This can be used for map-reduce type parallel execution","type":"array","items":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"object"}]}},"useValues":{"type":"boolean"}},"required":["target"]}},"required":["input","workflowId"]}]},{"$id":"workflow/unit/mixins/assertion","$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","properties":{"type":{"const":"assertion"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}},"required":["name","statement"]},{"$id":"workflow/unit/mixins/assignment","$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","properties":{"type":{"const":"assignment"},"input":{"description":"Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"operand":{"description":"Name of the global variable. e.g. 'x'","type":"string"},"value":{"description":"Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}},"required":["name","operand","value"]},{"$id":"workflow/unit/mixins/base","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]},{"$id":"workflow/unit/mixins/condition","$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","properties":{"type":{"const":"condition"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"statement":{"description":"Condition statement. e.g. 'abs(x-total_energy) < 1e-5'","type":"string"},"then":{"description":"Flowchart ID reference for `then` part of the condition.","type":"string"},"else":{"description":"Flowchart ID reference for `else` part of the condition.","type":"string"},"maxOccurrences":{"description":"Maximum occurrence of the condition, usable for loops.","type":"integer"},"throwException":{"description":"Throw exception on reaching to maximum occurence.","type":"boolean"}},"required":["input","statement","then","else","maxOccurrences"]},{"$id":"workflow/unit/mixins/error","$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]},{"$id":"workflow/unit/mixins/execution","$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]},{"$id":"workflow/unit/mixins/io","$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","properties":{"type":{"const":"io"},"subtype":{"enum":["input","output","dataFrame"]},"source":{"enum":["api","object_storage"]},"input":{"type":"array","items":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]}],"discriminator":{"propertyName":"type"}}}},"required":["subtype","source","input"]},{"$id":"workflow/unit/mixins/map","$schema":"http://json-schema.org/draft-07/schema#","title":"map unit mixin schema","type":"object","properties":{"type":{"const":"map"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","properties":{"target":{"description":"Name of the target variable to substitute using the values below. e.g. K_POINTS","type":"string"},"scope":{"description":"Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.","type":"string"},"name":{"description":"Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.","type":"string"},"values":{"description":"Sequence of values for the target Jinja variable. Optional if `scope` and `name` are given. This can be used for map-reduce type parallel execution","type":"array","items":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"object"}]}},"useValues":{"type":"boolean"}},"required":["target"]}},"required":["input","workflowId"]},{"$id":"workflow/unit/mixins/processing","$schema":"http://json-schema.org/draft-07/schema#","title":"processing unit mixin schema","type":"object","properties":{"type":{"const":"processing"},"operation":{"description":"Contains information about the operation used.","type":"string"},"operationType":{"description":"Contains information about the specific type of the operation used.","type":"string"},"inputData":{"description":"unit input (type to be specified by the child units)"}},"required":["operation","operationType","inputData"]},{"$id":"workflow/unit/mixins/reduce","$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit mixin schema","type":"object","properties":{"type":{"const":"reduce"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","properties":{"operation":{"description":"reduce operation, e.g. aggregate","type":"string"},"arguments":{"description":"arguments which are passed to reduce operation function","type":"array","items":{"type":"string"}}},"required":["operation","arguments"]}}},"required":["mapFlowchartId","input"]},{"$id":"workflow/unit/mixins/subworkflow","$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}},{"$id":"workflow/unit/reduce","$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit mixin schema","type":"object","properties":{"type":{"const":"reduce"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","properties":{"operation":{"description":"reduce operation, e.g. aggregate","type":"string"},"arguments":{"description":"arguments which are passed to reduce operation function","type":"array","items":{"type":"string"}}},"required":["operation","arguments"]}}},"required":["mapFlowchartId","input"]}]},{"$id":"workflow/unit/runtime/-runtime-item-full-object","$schema":"http://json-schema.org/draft-07/schema#","title":"full result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. 'my_custom_property. '","type":"string"}},"required":["name"]},{"$id":"workflow/unit/runtime/-runtime-item-name-object","$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"additionalProperties":true,"required":["name"]},{"$id":"workflow/unit/runtime/-runtime-item-string","$schema":"http://json-schema.org/draft-07/schema#","title":"RuntimeItemString","description":"name of runtime item in shortened notation","type":"string"},{"$id":"workflow/unit/runtime/runtime-item","$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"additionalProperties":true,"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"RuntimeItemString","description":"name of runtime item in shortened notation","type":"string"}]},{"$id":"workflow/unit/runtime/runtime-items","$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema (pre-/post-processors, monitors, results","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"additionalProperties":true,"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"RuntimeItemString","description":"name of runtime item in shortened notation","type":"string"}]}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"additionalProperties":true,"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"RuntimeItemString","description":"name of runtime item in shortened notation","type":"string"}]}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"additionalProperties":true,"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"RuntimeItemString","description":"name of runtime item in shortened notation","type":"string"}]}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"additionalProperties":true,"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"RuntimeItemString","description":"name of runtime item in shortened notation","type":"string"}]}}}},{"$id":"workflow/unit/subworkflow","$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]},{"$id":"workflow/unit","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit mixin schema","type":"object","properties":{"type":{"const":"map"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","properties":{"target":{"description":"Name of the target variable to substitute using the values below. e.g. K_POINTS","type":"string"},"scope":{"description":"Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.","type":"string"},"name":{"description":"Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.","type":"string"},"values":{"description":"Sequence of values for the target Jinja variable. Optional if `scope` and `name` are given. This can be used for map-reduce type parallel execution","type":"array","items":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"object"}]}},"useValues":{"type":"boolean"}},"required":["target"]}},"required":["input","workflowId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit mixin schema","type":"object","properties":{"type":{"const":"reduce"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","properties":{"operation":{"description":"reduce operation, e.g. aggregate","type":"string"},"arguments":{"description":"arguments which are passed to reduce operation function","type":"array","items":{"type":"string"}}},"required":["operation","arguments"]}}},"required":["mapFlowchartId","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]},{"$id":"workflow","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"metadata schema","type":"object","properties":{"metadata":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"base workflow schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this workflow (TODO: add enums)","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"isUsingDataset":{"description":"Whether to use the dataset tab in the job designer. Mutually exclusive with using the materials tab.","type":"boolean"},"isMultiMaterial":{"description":"Defines whether the workflow is for a multi-material simulation","type":"boolean"},"subworkflows":{"description":"Array of subworkflows. Subworkflow can be an instance of workflow to allow for nesting","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Mixin Schema","type":"object","properties":{"properties":{"description":"Array of characteristic properties calculated by this subworkflow","type":"array","items":{"description":"property names, eg. `band_gaps`, `band_structure`","type":"string"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]},"units":{"description":"Contains the Units of the subworkflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow subworkflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","properties":{"type":{"const":"io"},"subtype":{"enum":["input","output","dataFrame"]},"source":{"enum":["api","object_storage"]},"input":{"type":"array","items":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"data IO rest API input schema","type":"object","properties":{"type":{"type":"string","const":"api"},"endpoint":{"description":"rest API endpoint","type":"string"},"endpoint_options":{"description":"rest API endpoint options","type":"object"},"name":{"description":"the name of the variable in local scope to save the data under","type":"string"}},"required":["type","endpoint","endpoint_options"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"file_metadata","type":"object","properties":{"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"},"filetype":{"description":"What kind of file this is, e.g. image / text","type":"string"}}}],"properties":{"type":{"type":"string","const":"object_storage"},"objectData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Object Storage Container Data","type":"object","properties":{"CONTAINER":{"description":"Object storage container for the file","type":"string"},"NAME":{"description":"Name of the file inside the object storage bucket","type":"string"},"PROVIDER":{"description":"Object storage provider","type":"string"},"REGION":{"description":"Region for the object container specified in Container","type":"string"},"SIZE":{"description":"Size of the file in bytes","type":"integer"},"TIMESTAMP":{"description":"Unix timestamp showing when the file was last modified","type":"string"}}},"overwrite":{"description":"if a file with the same filename already exists, whether to overwrite the old file","type":"boolean"}},"required":["type","objectData"]}],"discriminator":{"propertyName":"type"}}}},"required":["subtype","source","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","properties":{"type":{"const":"condition"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"statement":{"description":"Condition statement. e.g. 'abs(x-total_energy) < 1e-5'","type":"string"},"then":{"description":"Flowchart ID reference for `then` part of the condition.","type":"string"},"else":{"description":"Flowchart ID reference for `else` part of the condition.","type":"string"},"maxOccurrences":{"description":"Maximum occurrence of the condition, usable for loops.","type":"integer"},"throwException":{"description":"Throw exception on reaching to maximum occurence.","type":"boolean"}},"required":["input","statement","then","else","maxOccurrences"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","properties":{"type":{"const":"assertion"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}},"required":["name","statement"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"executable":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","properties":{"applicationName":{"description":"name of the application this executable belongs to","type":"string"},"applicationVersion":{"description":"version of the application this executable belongs to","type":"string"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"}},"required":["applicationName","applicationVersion"]}]},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","properties":{"executableName":{"description":"name of the executable this flavor belongs to","type":"string"},"applicationName":{"description":"name of the application this flavor belongs to","type":"string"},"applicationVersion":{"description":"version of the application this flavor belongs to","type":"string"},"input":{"title":"execution unit input schema","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input id item schema for physics-based simulation engines","type":"object","properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}},"required":["name"]}}},"required":["input","executableName","applicationName","applicationVersion"]}]},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}},"required":["name"]}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}},"required":["contextProviders","content","executableName","applicationName","applicationVersion"]}]},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}},"required":["isManuallyChanged","template"]}},"context":{"type":"array","default":[],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"context item schema","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"input"},"data":{"type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem Total Energy Context Provider Schema","description":"Schema for NWChemTotalEnergyContextProvider that generates context data for NWChem total energy input.","type":"object","properties":{"contextProviderName":{"type":"string","const":"nwchem-total-energy","description":"Descriminator for AJV validator"},"CHARGE":{"type":"integer","description":"Total charge of the system."},"MULT":{"type":"integer","description":"Spin multiplicity of the system."},"BASIS":{"type":"string","description":"Basis set label used in the calculation (e.g., '6-31G')."},"NAT":{"type":"integer","description":"Number of atoms in the system."},"NTYP":{"type":"integer","description":"Number of unique atomic species in the system."},"ATOMIC_POSITIONS":{"type":"string","description":"Formatted text block with atomic positions including constraints."},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block with atomic positions without constraints."},"ATOMIC_SPECIES":{"type":"string","description":"Formatted text block for atomic species, including element symbols and masses."},"FUNCTIONAL":{"type":"string","description":"Exchange-correlation functional identifier (e.g., 'B3LYP')."},"CARTESIAN":{"type":"boolean","description":"Whether atomic positions are expressed in cartesian coordinates."},"RESTART":{"type":"boolean","description":"Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart."}},"required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE NEB Context Provider Schema","description":"Schema for QENEBContextProvider that generates context data for Quantum ESPRESSO pw.x NEB input. Extends the pw.x context with image-specific atomic positions.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"FIRST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"LAST_IMAGE":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Context Provider Schema","description":"Schema for QEPWXContextProvider that generates context data for Quantum ESPRESSO pw.x input files. Contains computed context properties and string-formatted versions of pw.x input sections.","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"QE pwx Base Context Provider Schema","description":"Base schema with shared Quantum ESPRESSO pw.x context provider properties.","type":"object","properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in \"Xn\" (e.g. Fe1) or \"X_*\" or \"X-*\" (e.g. C1, C_h; max total length cannot exceed 3 characters)"},"Mass_X":{"type":"number","description":"mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided)"},"PseudoPot_X":{"type":"string","description":"PseudoPot_X"}},"required":["X","Mass_X","PseudoPot_X"]}},"NAT":{"type":"integer","description":"number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms)"},"NTYP":{"type":"integer","description":"number of types of atoms in the unit cell"},"NTYP_WITH_LABELS":{"type":"integer","description":"Number of different atomic species including labels","minimum":1},"ATOMIC_POSITIONS":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"X":{"type":"string","description":"label of the atom as specified in ATOMIC_SPECIES"},"x":{"type":"number","description":"atomic positions"},"y":{"type":"number","description":"atomic positions"},"z":{"type":"number","description":"atomic positions"},"if_pos(1)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(2)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1},"if_pos(3)":{"$schema":"http://json-schema.org/draft-07/schema#","title":"integer one or zero","type":"integer","minimum":0,"maximum":1}},"required":["x","y","z"]}},"ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS":{"type":"string","description":"Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line"},"CELL_PARAMETERS":{"type":"object","additionalProperties":false,"properties":{"v1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","items":{"type":"number"},"minItems":3,"maxItems":3}}}}},{"type":"object","properties":{"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}},"required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP Context Provider Schema","description":"Schema for VASPContextProvider that generates context data for VASP POSCAR input files.","type":"object","properties":{"POSCAR":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints."},"POSCAR_WITH_CONSTRAINTS":{"type":"string","description":"POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented."},"contextProviderName":{"type":"string","const":"vasp","description":"Descriminator for AJV validator"}},"required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"VASP NEB Context Provider Schema","description":"Schema for VASPNEBContextProvider that generates context data for VASP NEB (nudged elastic band) runs.","type":"object","properties":{"FIRST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the first NEB image."},"LAST_IMAGE":{"type":"string","description":"POSCAR content with constraints for the last NEB image."},"INTERMEDIATE_IMAGES":{"type":"array","description":"POSCAR contents with constraints for all intermediate NEB images.","items":{"type":"string"}},"contextProviderName":{"type":"string","const":"vasp-neb","description":"Descriminator for AJV validator"}},"required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"]}],"discriminator":{"propertyName":"contextProviderName"}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"cutoffs"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Planewave Cutoffs Context Provider Schema","description":"Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine.","type":"object","properties":{"wavefunction":{"type":"number"},"density":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["kgrid","qgrid","igrid"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Grid Data Provider Schema","description":"3D grid with shifts for k-point or q-point sampling.","type":"object","properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"reciprocalVectorRatios":{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}},"required":["dimensions","gridMetricType","gridMetricValue"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","enum":["qpath","ipath","kpath","explicitKPath","explicitKPath2PIBA"]},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Points Path Data Provider Schema","description":"Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time).","type":"array","minItems":1,"items":{"type":"object","properties":{"point":{"type":"string"},"steps":{"type":"number"}},"required":["point","steps"]}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_j"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard J Context Provider Schema","description":"Hubbard parameters for DFT+U+J calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"paramType":{"type":"string","title":"Species","enum":["U","J","B","E2","E3"]},"atomicSpecies":{"type":"string","title":"Species"},"atomicOrbital":{"type":"string","title":"Orbital"},"value":{"type":"number","title":"Value (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_u"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard U Context Provider Schema","description":"Hubbard U parameters for DFT+U or DFT+U+V calculation.","type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicOrbital":{"type":"string","title":"Atomic orbital"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_v"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard V Context Provider Schema","description":"Hubbard V parameters for DFT+U+V calculation.","type":"array","minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Species 1"},"siteIndex":{"type":"integer","title":"Site no 1"},"atomicOrbital":{"type":"string","title":"Orbital 1"},"atomicSpecies2":{"type":"string","title":"Species 2"},"siteIndex2":{"type":"integer","title":"Site no 2"},"atomicOrbital2":{"type":"string","title":"Orbital 2"},"hubbardVValue":{"type":"number","title":"V (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"hubbard_legacy"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hubbard Legacy Context Provider Schema","description":"Hubbard parameters for DFT+U calculation.","type":"array","uniqueItems":true,"minItems":1,"items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"atomicSpeciesIndex":{"type":"integer","title":"Species index"},"hubbardUValue":{"type":"number","title":"Hubbard U (eV)"}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"neb"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"NEB Data Provider Schema","description":"Number of intermediate NEB images.","type":"object","properties":{"nImages":{"type":"number"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"boundaryConditions"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Boundary Conditions Data Provider Schema","type":"object","properties":{"type":{"type":"string","enum":["pbc","bc1","bc2","bc3"],"default":"pbc","description":"If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab."},"offset":{"type":"number"},"electricField":{"type":"number","title":"Electric Field (eV/A)"},"targetFermiEnergy":{"type":"number","title":"Target Fermi Energy (eV)"}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlSettings"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Settings Context Provider Schema","description":"Settings important to machine learning runs.","type":"object","properties":{"target_column_name":{"type":"string"},"problem_category":{"type":"string","enum":["regression","classification","clustering"]}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"mlTrainTestSplit"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML Train Test Split Context Provider Schema","description":"Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split.","type":"object","properties":{"fraction_held_as_test_set":{"type":"number","minimum":0,"maximum":1}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"dynamics"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ion Dynamics Context Provider Schema","description":"Important parameters for molecular dynamics calculation","type":"object","properties":{"numberOfSteps":{"type":"integer","title":"numberOfSteps"},"timeStep":{"type":"number","title":"timeStep (Hartree a.u.)"},"electronMass":{"type":"number","title":"Effective electron mass"},"temperature":{"type":"number","title":"Ionic temperature (K)"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"collinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Collinear Magnetization Context Provider Schema","description":"Set starting magnetization, can have values in the range [-1, +1].","type":"object","properties":{"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}},"required":["atomicSpecies","value","index"]}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}},"required":["startingMagnetization","isTotalMagnetization","totalMagnetization"]},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}},"required":["name","isEdited","data","extraData"]}],"properties":{"name":{"type":"string","const":"nonCollinearMagnetization"},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Non Collinear Magnetization Context Provider Schema","description":"Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints.","type":"object","properties":{"isExistingChargeDensity":{"type":"boolean","title":"Use existing charge density"},"isStartingMagnetization":{"type":"boolean","title":"Set starting magnetization"},"startingMagnetization":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization"}}}},"isArbitrarySpinAngle":{"type":"boolean","title":"Set arbitrary spin angle"},"isArbitrarySpinDirection":{"type":"boolean","title":"Set arbitrary spin direction"},"lforcet":{"type":"boolean"},"spinAngles":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","title":"Index"},"atomicSpecies":{"type":"string","title":"Atomic species"},"angle1":{"type":"number","title":"Angle1 (deg)"},"angle2":{"type":"number","title":"Angle2 (deg)"}}}},"isConstrainedMagnetization":{"type":"boolean","title":"Set constrained magnetization"},"constrainedMagnetization":{"type":"object","properties":{"constrainType":{"type":"string","title":"Constrain type","enum":["none","total","atomic","total direction","atomic direction"]},"lambda":{"type":"number","title":"lambda"}}},"isFixedMagnetization":{"type":"boolean","title":"Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)"},"fixedMagnetization":{"type":"object","properties":{"x":{"type":"number","title":"X-component"},"y":{"type":"number","title":"Y-component"},"z":{"type":"number","title":"Z-component"}}}}},"extraData":{"allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","properties":{"materialHash":{"type":"string","description":"UI only property used to track material change for re-render"}}}]}}}],"discriminator":{"propertyName":"name"}}}},"required":["type","input","application","executable","flavor","context"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"scope schema","type":"object","properties":{"scope":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","properties":{"type":{"const":"assignment"},"input":{"description":"Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","properties":{"scope":{"description":"Scope of the variable. e.g. 'global' or 'flowchart_id_2'","type":"string"},"name":{"description":"Name of the input data. e.g. total_energy","type":"string"}},"required":["scope","name"]}},"operand":{"description":"Name of the global variable. e.g. 'x'","type":"string"},"value":{"description":"Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression)","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"number"}]}},"required":["name","operand","value"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"model":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Any model schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"lda"},"functional":{"enum":["pz","pw","vwn","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"gga"},"functional":{"enum":["pbe","pbesol","pw91","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","properties":{"type":{"const":"dft"},"subtype":{"const":"hybrid"},"functional":{"enum":["b3lyp","hse06","other"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","functional","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"ML model schema","type":"object","properties":{"type":{"enum":["ml"]},"subtype":{"enum":["re"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Unknown model schema","type":"object","properties":{"type":{"enum":["unknown"]},"subtype":{"enum":["unknown"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","properties":{"type":{"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"data":{"description":"additional data specific to method, eg. array of pseudopotentials","type":"object","properties":{"searchText":{"type":"string"}},"additionalProperties":true}},"required":["type","subtype"]}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","properties":{"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"summary":{"description":"Application's short description.","type":"string"},"version":{"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"isDefault":{"description":"Whether the build is the default build","type":"boolean"},"isDefaultVersion":{"description":"Whether the version is the default version","type":"boolean"},"hasAdvancedComputeOptions":{"description":"Whether advanced compute options are present","type":"boolean"},"isLicensed":{"description":"Whether licensing is present","type":"boolean"},"isUsingMaterial":{"description":"Whether the application is using (being passed during a downstream processing routine) a material structure.","type":"boolean"},"runConfig":{"description":"The run configuration of the application","type":"object","properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}},"required":["commandTemplate","outFileName"]}},"required":["shortName","summary","version","build"]}]},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}},"required":["model","properties","application","units"]}]}},"units":{"description":"Contains the Units of the Workflow","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit schema","type":"object","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"map unit mixin schema","type":"object","properties":{"type":{"const":"map"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","properties":{"target":{"description":"Name of the target variable to substitute using the values below. e.g. K_POINTS","type":"string"},"scope":{"description":"Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given.","type":"string"},"name":{"description":"Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given.","type":"string"},"values":{"description":"Sequence of values for the target Jinja variable. Optional if `scope` and `name` are given. This can be used for map-reduce type parallel execution","type":"array","items":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"object"}]}},"useValues":{"type":"boolean"}},"required":["target"]}},"required":["input","workflowId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit mixin schema","type":"object","properties":{"type":{"const":"reduce"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","properties":{"operation":{"description":"reduce operation, e.g. aggregate","type":"string"},"arguments":{"description":"arguments which are passed to reduce operation function","type":"array","items":{"type":"string"}}},"required":["operation","arguments"]}}},"required":["mapFlowchartId","input"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"schema version","type":"object","properties":{"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}}],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"name entity schema","type":"object","properties":{"name":{"description":"entity name","type":"string"}},"required":["name"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"defaultable entity schema","type":"object","properties":{"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false}}}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","properties":{"preProcessors":{"description":"names of the pre-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"postProcessors":{"description":"names of the post-processors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"monitors":{"description":"names of the monitors for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}},"results":{"description":"names of the results for this calculation","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"runtime item name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}},"required":["name"],"additionalProperties":true}}},"required":["preProcessors","postProcessors","monitors","results"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"status track schema","type":"object","properties":{"statusTrack":{"type":"array","items":{"type":"object","properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}},"required":["trackedAt","status"]}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","properties":{"isDraft":{"type":"boolean"},"head":{"description":"Whether this unit is the first one to be executed.","type":"boolean"},"flowchartId":{"description":"Identity of the unit in the workflow. Used to trace the execution flow of the workflow.","type":"string"},"next":{"description":"Next unit's flowchartId. If empty, the current unit is the last.","type":"string"},"enableRender":{"description":"Whether Rupy should attempt to use Jinja templating to add context variables into the unit","type":"boolean"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]}},"required":["flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"error unit mixin schema","type":"object","properties":{"type":{"const":"error"},"reason":{"type":"string","description":"JSON string with validation/hydration details: { error, json, schema }"}},"required":["reason"]}]}],"discriminator":{"propertyName":"type"},"required":["type"]}},"application":{"description":"information about the main application used for workflow categorization by application in standata.","type":"object","properties":{"name":{"description":"name of the application","type":"string"}}},"tags":{"description":"tags for the workflow","type":"array","items":{"type":"string"}}},"required":["properties","units","subworkflows"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Description schema","type":"object","properties":{"description":{"description":"entity description","type":"string"},"descriptionObject":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity tags schema","type":"object","properties":{"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}],"properties":{"workflows":{"description":"Array of workflows with the same schema as the current one.","type":"array","items":{"type":"object"}},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","properties":{"queue":{"description":"Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication.","type":"string","enum":["D","OR","OF","OFplus","SR","SF","SFplus","OR4","OR8","OR16","SR4","SR8","SR16","GOF","G4OF","G8OF","GSF","G4SF","G8SF"]},"nodes":{"description":"number of nodes used for the job inside the RMS.","type":"integer"},"ppn":{"description":"number of CPUs used for the job inside the RMS.","type":"integer"},"timeLimit":{"description":"Wallclock time limit for computing a job. Clock format: 'hh:mm:ss'","type":"string"},"timeLimitType":{"description":"Convention to use when reasoning about time limits","type":"string","default":"per single attempt","enum":["per single attempt","compound"]},"isRestartable":{"description":"Job is allowed to restart on termination.","type":"boolean","default":true},"notify":{"description":"Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined.","type":"string"},"email":{"description":"Email address to notify about job execution.","type":"string"},"maxCPU":{"description":"Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user.","type":"integer"},"arguments":{"description":"Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere","allOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","properties":{"nimage":{"description":"Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others.","type":"integer","default":1,"minimum":1,"maximum":100},"npools":{"description":"Each image can be subpartitioned into `pools`, each taking care of a group of k-points.","type":"integer","default":1,"minimum":1,"maximum":100},"nband":{"description":"Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions).","type":"integer","default":1,"minimum":1,"maximum":100},"ntg":{"description":"In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time.","type":"integer","default":1,"minimum":1,"maximum":100},"ndiag":{"description":"A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations.","type":"integer","default":1,"minimum":1,"maximum":100}},"additionalProperties":false}],"default":{}},"cluster":{"description":"Cluster where the job is executed. Optional on create. Required on job submission.","type":"object","properties":{"fqdn":{"description":"FQDN of the cluster. e.g. master-1-staging.exabyte.io","type":"string"},"jid":{"description":"Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io","type":"string"}}},"errors":{"description":"Computation error. Optional. Appears only if something happens on jobs execution.","type":"array","items":{"type":"object","properties":{"domain":{"description":"Domain of the error appearance (internal).","type":"string","enum":["rupy","alfred","celim","webapp"]},"reason":{"description":"Should be a short, unique, machine-readable error code string. e.g. FileNotFound","type":"string"},"message":{"description":"Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json'","type":"string"},"traceback":{"description":"Full machine-readable error traceback. e.g. FileNotFound","type":"string"}}}},"excludeFilesPattern":{"description":"A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix","type":"string"}},"required":["queue","nodes","ppn","timeLimit"]}},"required":["workflows"]}]''') \ No newline at end of file diff --git a/src/py/mat3ra/esse/models/core/reference/__init__.py b/src/py/mat3ra/esse/models/core/reference/__init__.py index 986bd625e..4d6e96981 100644 --- a/src/py/mat3ra/esse/models/core/reference/__init__.py +++ b/src/py/mat3ra/esse/models/core/reference/__init__.py @@ -42,7 +42,7 @@ class InfoForCharacteristicObtainedByExabyteCalculation(BaseModel): owner: EntityReferenceSchema = Field(..., title="entity reference schema") -class Type123(Enum): +class Type126(Enum): experiment = "experiment" @@ -83,7 +83,7 @@ class LocationSchema(BaseModel): """ -class Type124(Enum): +class Type127(Enum): literature = "literature" @@ -93,7 +93,7 @@ class PagesSchema(BaseModel): class LiteratureReferenceSchema(BaseModel): - type: Optional[Type124] = None + type: Optional[Type127] = None doi: Optional[str] = None """ Digital Object Identifier of the reference. @@ -153,7 +153,7 @@ class LiteratureReferenceSchema(BaseModel): class InfoForCharacteristicObtainedByExperiment(BaseModel): - type: Optional[Type123] = None + type: Optional[Type126] = None authors: List[ExperimentAuthorSchema] """ experiment authors @@ -183,7 +183,7 @@ class InfoForCharacteristicObtainedByExperiment(BaseModel): class LiteratureReferenceSchema12(BaseModel): - type: Optional[Type124] = None + type: Optional[Type127] = None doi: Optional[str] = None """ Digital Object Identifier of the reference. diff --git a/src/py/mat3ra/esse/models/core/reference/external.py b/src/py/mat3ra/esse/models/core/reference/external.py new file mode 100644 index 000000000..f28cca796 --- /dev/null +++ b/src/py/mat3ra/esse/models/core/reference/external.py @@ -0,0 +1,24 @@ +# generated by datamodel-codegen: +# filename: core/reference/external.json +# version: 0.28.5 + +from __future__ import annotations + +from typing import Optional + +from pydantic import BaseModel + + +class ESSE(BaseModel): + measurementId: str + """ + Measurement's identity + """ + sampleId: Optional[str] = None + """ + Identity of the sample the result is about + """ + unitId: str + """ + Id of the unit that extracted the result + """ diff --git a/src/py/mat3ra/esse/models/core/reusable/combined_value.py b/src/py/mat3ra/esse/models/core/reusable/combined_value.py new file mode 100644 index 000000000..1a7622ca3 --- /dev/null +++ b/src/py/mat3ra/esse/models/core/reusable/combined_value.py @@ -0,0 +1,22 @@ +# generated by datamodel-codegen: +# filename: core/reusable/combined_value.json +# version: 0.28.5 + +from __future__ import annotations + +from pydantic import BaseModel + + +class CombinedValueSchema(BaseModel): + value: float + """ + mean over the combined measurements + """ + standardDeviation: float + """ + population standard deviation over the combined measurements (not the standard error of the mean) + """ + count: int + """ + number of measurements combined + """ diff --git a/src/py/mat3ra/esse/models/core/reusable/field_condition.py b/src/py/mat3ra/esse/models/core/reusable/field_condition.py new file mode 100644 index 000000000..5239f78d3 --- /dev/null +++ b/src/py/mat3ra/esse/models/core/reusable/field_condition.py @@ -0,0 +1,12 @@ +# generated by datamodel-codegen: +# filename: core/reusable/field_condition.json +# version: 0.28.5 + +from __future__ import annotations + +from enum import Enum + + +class FieldConditionSchema(Enum): + on = "on" + off = "off" diff --git a/src/py/mat3ra/esse/models/core/reusable/hysteresis_loop_parameters.py b/src/py/mat3ra/esse/models/core/reusable/hysteresis_loop_parameters.py new file mode 100644 index 000000000..080e048fc --- /dev/null +++ b/src/py/mat3ra/esse/models/core/reusable/hysteresis_loop_parameters.py @@ -0,0 +1,78 @@ +# generated by datamodel-codegen: +# filename: core/reusable/hysteresis_loop_parameters.json +# version: 0.28.5 + +from __future__ import annotations + +from pydantic import BaseModel, Field + + +class CombinedValueSchema(BaseModel): + value: float + """ + mean over the combined measurements + """ + standardDeviation: float + """ + population standard deviation over the combined measurements (not the standard error of the mean) + """ + count: int + """ + number of measurements combined + """ + + +class CoerciveVoltage(BaseModel): + rising: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ + falling: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ + + +class RemanentResponse(BaseModel): + rising: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ + falling: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ + + +class HysteresisLoopParametersSchema(BaseModel): + imprint: CombinedValueSchema = Field(..., title="Combined value schema") + """ + bias at the centre of the loop: half the sum of the two coercive voltages + """ + coerciveVoltage: CoerciveVoltage + """ + bias at which the response crosses the loop's offset, on the rising and the falling branch + """ + loopWidth: CombinedValueSchema = Field(..., title="Combined value schema") + """ + bias separation of the two coercive voltages + """ + loopHeight: CombinedValueSchema = Field(..., title="Combined value schema") + """ + response separation of the two remanent responses + """ + remanentResponse: RemanentResponse + """ + response at zero bias, on the rising and the falling branch + """ + + +class BranchPair(BaseModel): + rising: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ + falling: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ diff --git a/src/py/mat3ra/esse/models/job/__init__.py b/src/py/mat3ra/esse/models/job/__init__.py index 230d3bd79..43ab345d0 100644 --- a/src/py/mat3ra/esse/models/job/__init__.py +++ b/src/py/mat3ra/esse/models/job/__init__.py @@ -836,6 +836,10 @@ class NWChemTotalEnergyContextProviderSchema(BaseModel): """ Whether atomic positions are expressed in cartesian coordinates. """ + RESTART: Optional[bool] = None + """ + Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart. + """ class RESTARTMODE(Enum): @@ -1151,7 +1155,7 @@ class GridContextItemSchema(BaseModel): isEdited: bool -class Name610(Enum): +class Name612(Enum): qpath = "qpath" ipath = "ipath" kpath = "kpath" diff --git a/src/py/mat3ra/esse/models/material/__init__.py b/src/py/mat3ra/esse/models/material/__init__.py index 5cbe57ce7..6dec72a89 100644 --- a/src/py/mat3ra/esse/models/material/__init__.py +++ b/src/py/mat3ra/esse/models/material/__init__.py @@ -285,30 +285,30 @@ class VolumeSchema(BaseModel): value: float -class Name617(Enum): +class Name619(Enum): density = "density" -class Units282(Enum): +class Units286(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units282] = None + units: Optional[Units286] = None value: float -class Units283(Enum): +class Units287(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units283] = None + units: Optional[Units287] = None value: float -class Name618(Enum): +class Name620(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name619(Enum): +class Name621(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name620(Enum): +class Name622(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name621(Enum): +class Name623(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name622(Enum): +class Name624(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name623(Enum): +class Name625(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name623 + name: Name625 """ Name of the consistency check that is performed, which is listed in an enum. """ diff --git a/src/py/mat3ra/esse/models/material/material_properties.py b/src/py/mat3ra/esse/models/material/material_properties.py index bf98a858d..4923ded8c 100644 --- a/src/py/mat3ra/esse/models/material/material_properties.py +++ b/src/py/mat3ra/esse/models/material/material_properties.py @@ -285,30 +285,30 @@ class VolumeSchema(BaseModel): value: float -class Name649(Enum): +class Name651(Enum): density = "density" -class Units294(Enum): +class Units298(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units294] = None + units: Optional[Units298] = None value: float -class Units295(Enum): +class Units299(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units295] = None + units: Optional[Units299] = None value: float -class Name650(Enum): +class Name652(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name651(Enum): +class Name653(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name652(Enum): +class Name654(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name653(Enum): +class Name655(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name654(Enum): +class Name656(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name655(Enum): +class Name657(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name655 + name: Name657 """ Name of the consistency check that is performed, which is listed in an enum. """ diff --git a/src/py/mat3ra/esse/models/material_enhanced.py b/src/py/mat3ra/esse/models/material_enhanced.py index 76fb2306a..d0bdaf7ff 100644 --- a/src/py/mat3ra/esse/models/material_enhanced.py +++ b/src/py/mat3ra/esse/models/material_enhanced.py @@ -300,30 +300,30 @@ class VolumeSchema(BaseModel): value: float -class Name625(Enum): +class Name627(Enum): density = "density" -class Units285(Enum): +class Units289(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units285] = None + units: Optional[Units289] = None value: float -class Units286(Enum): +class Units290(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units286] = None + units: Optional[Units290] = None value: float -class Name626(Enum): +class Name628(Enum): symmetry = "symmetry" @@ -343,7 +343,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name627(Enum): +class Name629(Enum): elemental_ratio = "elemental_ratio" @@ -356,7 +356,7 @@ class ElementalRatio(BaseModel): """ -class Name628(Enum): +class Name630(Enum): p_norm = "p-norm" @@ -369,7 +369,7 @@ class PNorm(BaseModel): value: float -class Name629(Enum): +class Name631(Enum): inchi = "inchi" @@ -378,7 +378,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name630(Enum): +class Name632(Enum): inchi_key = "inchi_key" @@ -465,7 +465,7 @@ class FileSourceSchema(BaseModel): """ -class Name631(Enum): +class Name633(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -478,7 +478,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name631 + name: Name633 """ Name of the consistency check that is performed, which is listed in an enum. """ diff --git a/src/py/mat3ra/esse/models/material_enhanced_hashed.py b/src/py/mat3ra/esse/models/material_enhanced_hashed.py index 6fc2f98d3..aa6b98603 100644 --- a/src/py/mat3ra/esse/models/material_enhanced_hashed.py +++ b/src/py/mat3ra/esse/models/material_enhanced_hashed.py @@ -300,30 +300,30 @@ class VolumeSchema(BaseModel): value: float -class Name633(Enum): +class Name635(Enum): density = "density" -class Units288(Enum): +class Units292(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units288] = None + units: Optional[Units292] = None value: float -class Units289(Enum): +class Units293(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units289] = None + units: Optional[Units293] = None value: float -class Name634(Enum): +class Name636(Enum): symmetry = "symmetry" @@ -343,7 +343,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name635(Enum): +class Name637(Enum): elemental_ratio = "elemental_ratio" @@ -356,7 +356,7 @@ class ElementalRatio(BaseModel): """ -class Name636(Enum): +class Name638(Enum): p_norm = "p-norm" @@ -369,7 +369,7 @@ class PNorm(BaseModel): value: float -class Name637(Enum): +class Name639(Enum): inchi = "inchi" @@ -378,7 +378,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name638(Enum): +class Name640(Enum): inchi_key = "inchi_key" @@ -465,7 +465,7 @@ class FileSourceSchema(BaseModel): """ -class Name639(Enum): +class Name641(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -478,7 +478,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name639 + name: Name641 """ Name of the consistency check that is performed, which is listed in an enum. """ diff --git a/src/py/mat3ra/esse/models/material_hashed.py b/src/py/mat3ra/esse/models/material_hashed.py index 4252b5f7d..d5b5f65c6 100644 --- a/src/py/mat3ra/esse/models/material_hashed.py +++ b/src/py/mat3ra/esse/models/material_hashed.py @@ -285,30 +285,30 @@ class VolumeSchema(BaseModel): value: float -class Name641(Enum): +class Name643(Enum): density = "density" -class Units291(Enum): +class Units295(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units291] = None + units: Optional[Units295] = None value: float -class Units292(Enum): +class Units296(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units292] = None + units: Optional[Units296] = None value: float -class Name642(Enum): +class Name644(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name643(Enum): +class Name645(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name644(Enum): +class Name646(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name645(Enum): +class Name647(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name646(Enum): +class Name648(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name647(Enum): +class Name649(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name647 + name: Name649 """ Name of the consistency check that is performed, which is listed in an enum. """ diff --git a/src/py/mat3ra/esse/models/materials_category/defective_structures/two_dimensional/adatom/configuration.py b/src/py/mat3ra/esse/models/materials_category/defective_structures/two_dimensional/adatom/configuration.py index 1b507c39c..f53d9236b 100644 --- a/src/py/mat3ra/esse/models/materials_category/defective_structures/two_dimensional/adatom/configuration.py +++ b/src/py/mat3ra/esse/models/materials_category/defective_structures/two_dimensional/adatom/configuration.py @@ -265,13 +265,13 @@ class Value(Enum): Og = "Og" -class Value37(Enum): +class Value49(Enum): X = "X" Vac = "Vac" class AtomicElementSchema(BaseModel): - value: Union[Value, Value37] + value: Union[Value, Value49] """ All elements, including extra elements """ @@ -419,30 +419,30 @@ class VolumeSchema(BaseModel): value: float -class Name116(Enum): +class Name164(Enum): density = "density" -class Units49(Enum): +class Units67(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units49] = None + units: Optional[Units67] = None value: float -class Units50(Enum): +class Units68(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units50] = None + units: Optional[Units68] = None value: float -class Name117(Enum): +class Name165(Enum): symmetry = "symmetry" @@ -462,7 +462,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name118(Enum): +class Name166(Enum): elemental_ratio = "elemental_ratio" @@ -475,7 +475,7 @@ class ElementalRatio(BaseModel): """ -class Name119(Enum): +class Name167(Enum): p_norm = "p-norm" @@ -488,7 +488,7 @@ class PNorm(BaseModel): value: float -class Name120(Enum): +class Name168(Enum): inchi = "inchi" @@ -497,7 +497,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name121(Enum): +class Name169(Enum): inchi_key = "inchi_key" @@ -584,7 +584,7 @@ class FileSourceSchema(BaseModel): """ -class Name122(Enum): +class Name170(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -597,7 +597,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name122 + name: Name170 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -769,7 +769,7 @@ class AxisEnum(Enum): z = "z" -class Value38(Enum): +class Value50(Enum): H = "H" He = "He" Li = "Li" @@ -890,13 +890,13 @@ class Value38(Enum): Og = "Og" -class Value39(Enum): +class Value51(Enum): X = "X" Vac = "Vac" -class AtomicElementSchema18(BaseModel): - value: Union[Value38, Value39] +class AtomicElementSchema24(BaseModel): + value: Union[Value50, Value51] """ All elements, including extra elements """ @@ -906,8 +906,8 @@ class AtomicElementSchema18(BaseModel): """ -class BasisSchema15(BaseModel): - elements: List[AtomicElementSchema18] = Field(..., title="atomic elements schema") +class BasisSchema21(BaseModel): + elements: List[AtomicElementSchema24] = Field(..., title="atomic elements schema") """ atomic elements schema """ @@ -922,7 +922,7 @@ class BasisSchema15(BaseModel): """ -class LatticeVectorsSchema14(BaseModel): +class LatticeVectorsSchema20(BaseModel): a: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") b: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") c: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") @@ -933,12 +933,12 @@ class LatticeVectorsSchema14(BaseModel): units: Optional[LatticeVectorsUnitsEnum] = Field("angstrom", title="lattice vectors units enum") -class LatticeUnitsSchema14(BaseModel): +class LatticeUnitsSchema20(BaseModel): length: Optional[LatticeUnitsLengthEnum] = Field("angstrom", title="lattice units length enum") angle: Optional[LatticeUnitsAngleEnum] = Field("degree", title="lattice units angle enum") -class LatticeSchema14(BaseModel): +class LatticeSchema20(BaseModel): a: float """ length of the first lattice vector @@ -963,56 +963,56 @@ class LatticeSchema14(BaseModel): """ angle between first and third lattice vector """ - vectors: Optional[LatticeVectorsSchema14] = Field(None, title="lattice vectors schema") + vectors: Optional[LatticeVectorsSchema20] = Field(None, title="lattice vectors schema") type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum") - units: Optional[LatticeUnitsSchema14] = Field( - default_factory=lambda: LatticeUnitsSchema14.model_validate({"length": "angstrom", "angle": "degree"}), + units: Optional[LatticeUnitsSchema20] = Field( + default_factory=lambda: LatticeUnitsSchema20.model_validate({"length": "angstrom", "angle": "degree"}), title="Lattice units schema", ) -class Name123(Enum): +class Name171(Enum): volume = "volume" -class Units51(Enum): +class Units69(Enum): angstrom_3 = "angstrom^3" -class VolumeSchema14(BaseModel): +class VolumeSchema20(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units51] = None + units: Optional[Units69] = None value: float -class Name124(Enum): +class Name172(Enum): density = "density" -class Units52(Enum): +class Units70(Enum): g_cm_3 = "g/cm^3" -class DensitySchema14(BaseModel): +class DensitySchema20(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units52] = None + units: Optional[Units70] = None value: float -class Units53(Enum): +class Units71(Enum): angstrom = "angstrom" -class ScalarSchema15(BaseModel): - units: Optional[Units53] = None +class ScalarSchema21(BaseModel): + units: Optional[Units71] = None value: float -class Name125(Enum): +class Name173(Enum): symmetry = "symmetry" -class SymmetrySchema14(BaseModel): +class SymmetrySchema20(BaseModel): pointGroupSymbol: Optional[str] = None """ point group symbol in Schoenflies notation @@ -1021,18 +1021,18 @@ class SymmetrySchema14(BaseModel): """ space group symbol in Hermann–Mauguin notation """ - tolerance: Optional[ScalarSchema15] = Field(None, title="scalar schema") + tolerance: Optional[ScalarSchema21] = Field(None, title="scalar schema") """ tolerance used for symmetry calculation """ name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name126(Enum): +class Name174(Enum): elemental_ratio = "elemental_ratio" -class ElementalRatio14(BaseModel): +class ElementalRatio20(BaseModel): name: Literal["3#-datamodel-code-generator-#-object-#-special-#"] value: confloat(ge=0.0, le=1.0) element: Optional[str] = None @@ -1041,11 +1041,11 @@ class ElementalRatio14(BaseModel): """ -class Name127(Enum): +class Name175(Enum): p_norm = "p-norm" -class PNorm14(BaseModel): +class PNorm20(BaseModel): name: Literal["4#-datamodel-code-generator-#-object-#-special-#"] degree: Optional[int] = None """ @@ -1054,49 +1054,49 @@ class PNorm14(BaseModel): value: float -class Name128(Enum): +class Name176(Enum): inchi = "inchi" -class InChIRepresentationSchema14(BaseModel): +class InChIRepresentationSchema20(BaseModel): name: Literal["5#-datamodel-code-generator-#-object-#-special-#"] value: str -class Name129(Enum): +class Name177(Enum): inchi_key = "inchi_key" -class InChIKeyRepresentationSchema14(BaseModel): +class InChIKeyRepresentationSchema20(BaseModel): name: Literal["6#-datamodel-code-generator-#-object-#-special-#"] value: str -class DerivedPropertiesSchema14( +class DerivedPropertiesSchema20( RootModel[ Union[ - VolumeSchema14, - DensitySchema14, - SymmetrySchema14, - ElementalRatio14, - PNorm14, - InChIRepresentationSchema14, - InChIKeyRepresentationSchema14, + VolumeSchema20, + DensitySchema20, + SymmetrySchema20, + ElementalRatio20, + PNorm20, + InChIRepresentationSchema20, + InChIKeyRepresentationSchema20, ] ] ): root: Union[ - VolumeSchema14, - DensitySchema14, - SymmetrySchema14, - ElementalRatio14, - PNorm14, - InChIRepresentationSchema14, - InChIKeyRepresentationSchema14, + VolumeSchema20, + DensitySchema20, + SymmetrySchema20, + ElementalRatio20, + PNorm20, + InChIRepresentationSchema20, + InChIKeyRepresentationSchema20, ] = Field(..., discriminator="name") -class DatabaseSourceSchema14(BaseModel): +class DatabaseSourceSchema20(BaseModel): id: Union[str, float] """ ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32 @@ -1123,14 +1123,14 @@ class DatabaseSourceSchema14(BaseModel): """ -class Name130(Enum): +class Name178(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" -class MaterialConsistencyCheckSchema14(BaseModel): - name: Name130 +class MaterialConsistencyCheckSchema20(BaseModel): + name: Name178 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -1148,7 +1148,7 @@ class MaterialConsistencyCheckSchema14(BaseModel): """ -class BoundaryConditions15(BaseModel): +class BoundaryConditions21(BaseModel): type: Optional[Type] = "pbc" """ If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab. @@ -1156,14 +1156,14 @@ class BoundaryConditions15(BaseModel): offset: float -class MaterialMetadataBoundaryConditions15(BaseModel): +class MaterialMetadataBoundaryConditions21(BaseModel): model_config = ConfigDict( extra="allow", ) - boundaryConditions: Optional[BoundaryConditions15] = None + boundaryConditions: Optional[BoundaryConditions21] = None -class CrystalSchema14(BaseModel): +class CrystalSchema20(BaseModel): id: Optional[str] = Field(None, alias="_id") """ entity identity @@ -1193,10 +1193,10 @@ class CrystalSchema14(BaseModel): """ chemical formula based on the number of atoms of each element in the supercell """ - basis: BasisSchema15 = Field(..., title="basis schema") - lattice: LatticeSchema14 = Field(..., title="lattice schema") - derivedProperties: Optional[List[DerivedPropertiesSchema14]] = Field(None, title="derived properties schema") - external: Optional[DatabaseSourceSchema14] = Field(None, title="database source schema") + basis: BasisSchema21 = Field(..., title="basis schema") + lattice: LatticeSchema20 = Field(..., title="lattice schema") + derivedProperties: Optional[List[DerivedPropertiesSchema20]] = Field(None, title="derived properties schema") + external: Optional[DatabaseSourceSchema20] = Field(None, title="database source schema") """ information about a database source """ @@ -1212,9 +1212,9 @@ class CrystalSchema14(BaseModel): """ Whether to work in the finite molecular picture (usually with atomic orbital basis) """ - consistencyChecks: Optional[List[MaterialConsistencyCheckSchema14]] = None + consistencyChecks: Optional[List[MaterialConsistencyCheckSchema20]] = None metadata: Optional[ - Union[MaterialMetadataBoundaryConditions15, MaterialMetadataSlabProperties, MaterialMetadataBulkProperties] + Union[MaterialMetadataBoundaryConditions21, MaterialMetadataSlabProperties, MaterialMetadataBulkProperties] ] = {} @@ -1227,7 +1227,7 @@ class VacuumConfigurationSchema(BaseModel): """ Size of the vacuum slab in angstroms """ - crystal: CrystalSchema14 = Field(..., title="Crystal Schema") + crystal: CrystalSchema20 = Field(..., title="Crystal Schema") """ A crystal structure, referencing the base material schema """ @@ -1258,7 +1258,7 @@ class SlabConfigurationSchema(BaseModel): """ -class Value40(Enum): +class Value52(Enum): H = "H" He = "He" Li = "Li" @@ -1379,13 +1379,13 @@ class Value40(Enum): Og = "Og" -class Value41(Enum): +class Value53(Enum): X = "X" Vac = "Vac" -class AtomicElementSchema19(BaseModel): - value: Union[Value40, Value41] +class AtomicElementSchema25(BaseModel): + value: Union[Value52, Value53] """ All elements, including extra elements """ @@ -1395,8 +1395,8 @@ class AtomicElementSchema19(BaseModel): """ -class BasisSchema16(BaseModel): - elements: List[AtomicElementSchema19] = Field(..., title="atomic elements schema") +class BasisSchema22(BaseModel): + elements: List[AtomicElementSchema25] = Field(..., title="atomic elements schema") """ atomic elements schema """ @@ -1411,7 +1411,7 @@ class BasisSchema16(BaseModel): """ -class LatticeVectorsSchema15(BaseModel): +class LatticeVectorsSchema21(BaseModel): a: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") b: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") c: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") @@ -1422,12 +1422,12 @@ class LatticeVectorsSchema15(BaseModel): units: Optional[LatticeVectorsUnitsEnum] = Field("angstrom", title="lattice vectors units enum") -class LatticeUnitsSchema15(BaseModel): +class LatticeUnitsSchema21(BaseModel): length: Optional[LatticeUnitsLengthEnum] = Field("angstrom", title="lattice units length enum") angle: Optional[LatticeUnitsAngleEnum] = Field("degree", title="lattice units angle enum") -class LatticeSchema15(BaseModel): +class LatticeSchema21(BaseModel): a: float """ length of the first lattice vector @@ -1452,56 +1452,56 @@ class LatticeSchema15(BaseModel): """ angle between first and third lattice vector """ - vectors: Optional[LatticeVectorsSchema15] = Field(None, title="lattice vectors schema") + vectors: Optional[LatticeVectorsSchema21] = Field(None, title="lattice vectors schema") type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum") - units: Optional[LatticeUnitsSchema15] = Field( - default_factory=lambda: LatticeUnitsSchema15.model_validate({"length": "angstrom", "angle": "degree"}), + units: Optional[LatticeUnitsSchema21] = Field( + default_factory=lambda: LatticeUnitsSchema21.model_validate({"length": "angstrom", "angle": "degree"}), title="Lattice units schema", ) -class Name131(Enum): +class Name179(Enum): volume = "volume" -class Units54(Enum): +class Units72(Enum): angstrom_3 = "angstrom^3" -class VolumeSchema15(BaseModel): +class VolumeSchema21(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units54] = None + units: Optional[Units72] = None value: float -class Name132(Enum): +class Name180(Enum): density = "density" -class Units55(Enum): +class Units73(Enum): g_cm_3 = "g/cm^3" -class DensitySchema15(BaseModel): +class DensitySchema21(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units55] = None + units: Optional[Units73] = None value: float -class Units56(Enum): +class Units74(Enum): angstrom = "angstrom" -class ScalarSchema16(BaseModel): - units: Optional[Units56] = None +class ScalarSchema22(BaseModel): + units: Optional[Units74] = None value: float -class Name133(Enum): +class Name181(Enum): symmetry = "symmetry" -class SymmetrySchema15(BaseModel): +class SymmetrySchema21(BaseModel): pointGroupSymbol: Optional[str] = None """ point group symbol in Schoenflies notation @@ -1510,18 +1510,18 @@ class SymmetrySchema15(BaseModel): """ space group symbol in Hermann–Mauguin notation """ - tolerance: Optional[ScalarSchema16] = Field(None, title="scalar schema") + tolerance: Optional[ScalarSchema22] = Field(None, title="scalar schema") """ tolerance used for symmetry calculation """ name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name134(Enum): +class Name182(Enum): elemental_ratio = "elemental_ratio" -class ElementalRatio15(BaseModel): +class ElementalRatio21(BaseModel): name: Literal["3#-datamodel-code-generator-#-object-#-special-#"] value: confloat(ge=0.0, le=1.0) element: Optional[str] = None @@ -1530,11 +1530,11 @@ class ElementalRatio15(BaseModel): """ -class Name135(Enum): +class Name183(Enum): p_norm = "p-norm" -class PNorm15(BaseModel): +class PNorm21(BaseModel): name: Literal["4#-datamodel-code-generator-#-object-#-special-#"] degree: Optional[int] = None """ @@ -1543,49 +1543,49 @@ class PNorm15(BaseModel): value: float -class Name136(Enum): +class Name184(Enum): inchi = "inchi" -class InChIRepresentationSchema15(BaseModel): +class InChIRepresentationSchema21(BaseModel): name: Literal["5#-datamodel-code-generator-#-object-#-special-#"] value: str -class Name137(Enum): +class Name185(Enum): inchi_key = "inchi_key" -class InChIKeyRepresentationSchema15(BaseModel): +class InChIKeyRepresentationSchema21(BaseModel): name: Literal["6#-datamodel-code-generator-#-object-#-special-#"] value: str -class DerivedPropertiesSchema15( +class DerivedPropertiesSchema21( RootModel[ Union[ - VolumeSchema15, - DensitySchema15, - SymmetrySchema15, - ElementalRatio15, - PNorm15, - InChIRepresentationSchema15, - InChIKeyRepresentationSchema15, + VolumeSchema21, + DensitySchema21, + SymmetrySchema21, + ElementalRatio21, + PNorm21, + InChIRepresentationSchema21, + InChIKeyRepresentationSchema21, ] ] ): root: Union[ - VolumeSchema15, - DensitySchema15, - SymmetrySchema15, - ElementalRatio15, - PNorm15, - InChIRepresentationSchema15, - InChIKeyRepresentationSchema15, + VolumeSchema21, + DensitySchema21, + SymmetrySchema21, + ElementalRatio21, + PNorm21, + InChIRepresentationSchema21, + InChIKeyRepresentationSchema21, ] = Field(..., discriminator="name") -class DatabaseSourceSchema15(BaseModel): +class DatabaseSourceSchema21(BaseModel): id: Union[str, float] """ ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32 @@ -1612,14 +1612,14 @@ class DatabaseSourceSchema15(BaseModel): """ -class Name138(Enum): +class Name186(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" -class MaterialConsistencyCheckSchema15(BaseModel): - name: Name138 +class MaterialConsistencyCheckSchema21(BaseModel): + name: Name186 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -1637,7 +1637,7 @@ class MaterialConsistencyCheckSchema15(BaseModel): """ -class BoundaryConditions16(BaseModel): +class BoundaryConditions22(BaseModel): type: Optional[Type] = "pbc" """ If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab. @@ -1645,14 +1645,14 @@ class BoundaryConditions16(BaseModel): offset: float -class MaterialMetadataBoundaryConditions16(BaseModel): +class MaterialMetadataBoundaryConditions22(BaseModel): model_config = ConfigDict( extra="allow", ) - boundaryConditions: Optional[BoundaryConditions16] = None + boundaryConditions: Optional[BoundaryConditions22] = None -class CrystalSchema15(BaseModel): +class CrystalSchema21(BaseModel): id: Optional[str] = Field(None, alias="_id") """ entity identity @@ -1682,10 +1682,10 @@ class CrystalSchema15(BaseModel): """ chemical formula based on the number of atoms of each element in the supercell """ - basis: BasisSchema16 = Field(..., title="basis schema") - lattice: LatticeSchema15 = Field(..., title="lattice schema") - derivedProperties: Optional[List[DerivedPropertiesSchema15]] = Field(None, title="derived properties schema") - external: Optional[DatabaseSourceSchema15] = Field(None, title="database source schema") + basis: BasisSchema22 = Field(..., title="basis schema") + lattice: LatticeSchema21 = Field(..., title="lattice schema") + derivedProperties: Optional[List[DerivedPropertiesSchema21]] = Field(None, title="derived properties schema") + external: Optional[DatabaseSourceSchema21] = Field(None, title="database source schema") """ information about a database source """ @@ -1701,9 +1701,9 @@ class CrystalSchema15(BaseModel): """ Whether to work in the finite molecular picture (usually with atomic orbital basis) """ - consistencyChecks: Optional[List[MaterialConsistencyCheckSchema15]] = None + consistencyChecks: Optional[List[MaterialConsistencyCheckSchema21]] = None metadata: Optional[ - Union[MaterialMetadataBoundaryConditions16, MaterialMetadataSlabProperties, MaterialMetadataBulkProperties] + Union[MaterialMetadataBoundaryConditions22, MaterialMetadataSlabProperties, MaterialMetadataBulkProperties] ] = {} @@ -1845,7 +1845,7 @@ class VacancySchema(BaseModel): class PointDefectSiteSchema(BaseModel): - crystal: CrystalSchema15 = Field(..., title="Crystal Schema") + crystal: CrystalSchema21 = Field(..., title="Crystal Schema") """ A crystal structure, referencing the base material schema """ @@ -1853,7 +1853,7 @@ class PointDefectSiteSchema(BaseModel): element: Union[AtomSchema, VacancySchema] -class Value42(Enum): +class Value54(Enum): H = "H" He = "He" Li = "Li" @@ -1974,13 +1974,13 @@ class Value42(Enum): Og = "Og" -class Value43(Enum): +class Value55(Enum): X = "X" Vac = "Vac" -class AtomicElementSchema20(BaseModel): - value: Union[Value42, Value43] +class AtomicElementSchema26(BaseModel): + value: Union[Value54, Value55] """ All elements, including extra elements """ @@ -1990,8 +1990,8 @@ class AtomicElementSchema20(BaseModel): """ -class BasisSchema17(BaseModel): - elements: List[AtomicElementSchema20] = Field(..., title="atomic elements schema") +class BasisSchema23(BaseModel): + elements: List[AtomicElementSchema26] = Field(..., title="atomic elements schema") """ atomic elements schema """ @@ -2006,7 +2006,7 @@ class BasisSchema17(BaseModel): """ -class LatticeVectorsSchema16(BaseModel): +class LatticeVectorsSchema22(BaseModel): a: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") b: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") c: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") @@ -2017,12 +2017,12 @@ class LatticeVectorsSchema16(BaseModel): units: Optional[LatticeVectorsUnitsEnum] = Field("angstrom", title="lattice vectors units enum") -class LatticeUnitsSchema16(BaseModel): +class LatticeUnitsSchema22(BaseModel): length: Optional[LatticeUnitsLengthEnum] = Field("angstrom", title="lattice units length enum") angle: Optional[LatticeUnitsAngleEnum] = Field("degree", title="lattice units angle enum") -class LatticeSchema16(BaseModel): +class LatticeSchema22(BaseModel): a: float """ length of the first lattice vector @@ -2047,56 +2047,56 @@ class LatticeSchema16(BaseModel): """ angle between first and third lattice vector """ - vectors: Optional[LatticeVectorsSchema16] = Field(None, title="lattice vectors schema") + vectors: Optional[LatticeVectorsSchema22] = Field(None, title="lattice vectors schema") type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum") - units: Optional[LatticeUnitsSchema16] = Field( - default_factory=lambda: LatticeUnitsSchema16.model_validate({"length": "angstrom", "angle": "degree"}), + units: Optional[LatticeUnitsSchema22] = Field( + default_factory=lambda: LatticeUnitsSchema22.model_validate({"length": "angstrom", "angle": "degree"}), title="Lattice units schema", ) -class Name139(Enum): +class Name187(Enum): volume = "volume" -class Units57(Enum): +class Units75(Enum): angstrom_3 = "angstrom^3" -class VolumeSchema16(BaseModel): +class VolumeSchema22(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units57] = None + units: Optional[Units75] = None value: float -class Name140(Enum): +class Name188(Enum): density = "density" -class Units58(Enum): +class Units76(Enum): g_cm_3 = "g/cm^3" -class DensitySchema16(BaseModel): +class DensitySchema22(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units58] = None + units: Optional[Units76] = None value: float -class Units59(Enum): +class Units77(Enum): angstrom = "angstrom" -class ScalarSchema17(BaseModel): - units: Optional[Units59] = None +class ScalarSchema23(BaseModel): + units: Optional[Units77] = None value: float -class Name141(Enum): +class Name189(Enum): symmetry = "symmetry" -class SymmetrySchema16(BaseModel): +class SymmetrySchema22(BaseModel): pointGroupSymbol: Optional[str] = None """ point group symbol in Schoenflies notation @@ -2105,18 +2105,18 @@ class SymmetrySchema16(BaseModel): """ space group symbol in Hermann–Mauguin notation """ - tolerance: Optional[ScalarSchema17] = Field(None, title="scalar schema") + tolerance: Optional[ScalarSchema23] = Field(None, title="scalar schema") """ tolerance used for symmetry calculation """ name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name142(Enum): +class Name190(Enum): elemental_ratio = "elemental_ratio" -class ElementalRatio16(BaseModel): +class ElementalRatio22(BaseModel): name: Literal["3#-datamodel-code-generator-#-object-#-special-#"] value: confloat(ge=0.0, le=1.0) element: Optional[str] = None @@ -2125,11 +2125,11 @@ class ElementalRatio16(BaseModel): """ -class Name143(Enum): +class Name191(Enum): p_norm = "p-norm" -class PNorm16(BaseModel): +class PNorm22(BaseModel): name: Literal["4#-datamodel-code-generator-#-object-#-special-#"] degree: Optional[int] = None """ @@ -2138,49 +2138,49 @@ class PNorm16(BaseModel): value: float -class Name144(Enum): +class Name192(Enum): inchi = "inchi" -class InChIRepresentationSchema16(BaseModel): +class InChIRepresentationSchema22(BaseModel): name: Literal["5#-datamodel-code-generator-#-object-#-special-#"] value: str -class Name145(Enum): +class Name193(Enum): inchi_key = "inchi_key" -class InChIKeyRepresentationSchema16(BaseModel): +class InChIKeyRepresentationSchema22(BaseModel): name: Literal["6#-datamodel-code-generator-#-object-#-special-#"] value: str -class DerivedPropertiesSchema16( +class DerivedPropertiesSchema22( RootModel[ Union[ - VolumeSchema16, - DensitySchema16, - SymmetrySchema16, - ElementalRatio16, - PNorm16, - InChIRepresentationSchema16, - InChIKeyRepresentationSchema16, + VolumeSchema22, + DensitySchema22, + SymmetrySchema22, + ElementalRatio22, + PNorm22, + InChIRepresentationSchema22, + InChIKeyRepresentationSchema22, ] ] ): root: Union[ - VolumeSchema16, - DensitySchema16, - SymmetrySchema16, - ElementalRatio16, - PNorm16, - InChIRepresentationSchema16, - InChIKeyRepresentationSchema16, + VolumeSchema22, + DensitySchema22, + SymmetrySchema22, + ElementalRatio22, + PNorm22, + InChIRepresentationSchema22, + InChIKeyRepresentationSchema22, ] = Field(..., discriminator="name") -class DatabaseSourceSchema16(BaseModel): +class DatabaseSourceSchema22(BaseModel): id: Union[str, float] """ ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32 @@ -2207,14 +2207,14 @@ class DatabaseSourceSchema16(BaseModel): """ -class Name146(Enum): +class Name194(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" -class MaterialConsistencyCheckSchema16(BaseModel): - name: Name146 +class MaterialConsistencyCheckSchema22(BaseModel): + name: Name194 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -2232,7 +2232,7 @@ class MaterialConsistencyCheckSchema16(BaseModel): """ -class BoundaryConditions17(BaseModel): +class BoundaryConditions23(BaseModel): type: Optional[Type] = "pbc" """ If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab. @@ -2240,14 +2240,14 @@ class BoundaryConditions17(BaseModel): offset: float -class MaterialMetadataBoundaryConditions17(BaseModel): +class MaterialMetadataBoundaryConditions23(BaseModel): model_config = ConfigDict( extra="allow", ) - boundaryConditions: Optional[BoundaryConditions17] = None + boundaryConditions: Optional[BoundaryConditions23] = None -class CrystalSchema16(BaseModel): +class CrystalSchema22(BaseModel): id: Optional[str] = Field(None, alias="_id") """ entity identity @@ -2277,10 +2277,10 @@ class CrystalSchema16(BaseModel): """ chemical formula based on the number of atoms of each element in the supercell """ - basis: BasisSchema17 = Field(..., title="basis schema") - lattice: LatticeSchema16 = Field(..., title="lattice schema") - derivedProperties: Optional[List[DerivedPropertiesSchema16]] = Field(None, title="derived properties schema") - external: Optional[DatabaseSourceSchema16] = Field(None, title="database source schema") + basis: BasisSchema23 = Field(..., title="basis schema") + lattice: LatticeSchema22 = Field(..., title="lattice schema") + derivedProperties: Optional[List[DerivedPropertiesSchema22]] = Field(None, title="derived properties schema") + external: Optional[DatabaseSourceSchema22] = Field(None, title="database source schema") """ information about a database source """ @@ -2296,13 +2296,13 @@ class CrystalSchema16(BaseModel): """ Whether to work in the finite molecular picture (usually with atomic orbital basis) """ - consistencyChecks: Optional[List[MaterialConsistencyCheckSchema16]] = None + consistencyChecks: Optional[List[MaterialConsistencyCheckSchema22]] = None metadata: Optional[ - Union[MaterialMetadataBoundaryConditions17, MaterialMetadataSlabProperties, MaterialMetadataBulkProperties] + Union[MaterialMetadataBoundaryConditions23, MaterialMetadataSlabProperties, MaterialMetadataBulkProperties] ] = {} -class VacuumConfigurationSchema6(BaseModel): +class VacuumConfigurationSchema9(BaseModel): direction: AxisEnum = Field(..., title="Axis Enum") """ Enum for axis types @@ -2311,14 +2311,14 @@ class VacuumConfigurationSchema6(BaseModel): """ Size of the vacuum slab in angstroms """ - crystal: CrystalSchema16 = Field(..., title="Crystal Schema") + crystal: CrystalSchema22 = Field(..., title="Crystal Schema") """ A crystal structure, referencing the base material schema """ class AdatomDefectConfigurationSchema(BaseModel): - stack_components: List[Union[SlabConfigurationSchema, PointDefectSiteSchema, VacuumConfigurationSchema6]] = Field( + stack_components: List[Union[SlabConfigurationSchema, PointDefectSiteSchema, VacuumConfigurationSchema9]] = Field( ..., max_length=3, min_length=3 ) direction: Optional[AxisEnum] = Field("z", title="Axis Enum") diff --git a/src/py/mat3ra/esse/models/materials_category/defective_structures/two_dimensional/terrace/configuration.py b/src/py/mat3ra/esse/models/materials_category/defective_structures/two_dimensional/terrace/configuration.py index 01ad440c7..cf02a086f 100644 --- a/src/py/mat3ra/esse/models/materials_category/defective_structures/two_dimensional/terrace/configuration.py +++ b/src/py/mat3ra/esse/models/materials_category/defective_structures/two_dimensional/terrace/configuration.py @@ -265,13 +265,13 @@ class Value(Enum): Og = "Og" -class Value45(Enum): +class Value37(Enum): X = "X" Vac = "Vac" class AtomicElementSchema(BaseModel): - value: Union[Value, Value45] + value: Union[Value, Value37] """ All elements, including extra elements """ @@ -419,30 +419,30 @@ class VolumeSchema(BaseModel): value: float -class Name148(Enum): +class Name116(Enum): density = "density" -class Units61(Enum): +class Units49(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units61] = None + units: Optional[Units49] = None value: float -class Units62(Enum): +class Units50(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units62] = None + units: Optional[Units50] = None value: float -class Name149(Enum): +class Name117(Enum): symmetry = "symmetry" @@ -462,7 +462,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name150(Enum): +class Name118(Enum): elemental_ratio = "elemental_ratio" @@ -475,7 +475,7 @@ class ElementalRatio(BaseModel): """ -class Name151(Enum): +class Name119(Enum): p_norm = "p-norm" @@ -488,7 +488,7 @@ class PNorm(BaseModel): value: float -class Name152(Enum): +class Name120(Enum): inchi = "inchi" @@ -497,7 +497,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name153(Enum): +class Name121(Enum): inchi_key = "inchi_key" @@ -584,7 +584,7 @@ class FileSourceSchema(BaseModel): """ -class Name154(Enum): +class Name122(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -597,7 +597,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name154 + name: Name122 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -769,7 +769,7 @@ class AxisEnum(Enum): z = "z" -class Value46(Enum): +class Value38(Enum): H = "H" He = "He" Li = "Li" @@ -890,13 +890,13 @@ class Value46(Enum): Og = "Og" -class Value47(Enum): +class Value39(Enum): X = "X" Vac = "Vac" -class AtomicElementSchema22(BaseModel): - value: Union[Value46, Value47] +class AtomicElementSchema18(BaseModel): + value: Union[Value38, Value39] """ All elements, including extra elements """ @@ -906,8 +906,8 @@ class AtomicElementSchema22(BaseModel): """ -class BasisSchema19(BaseModel): - elements: List[AtomicElementSchema22] = Field(..., title="atomic elements schema") +class BasisSchema15(BaseModel): + elements: List[AtomicElementSchema18] = Field(..., title="atomic elements schema") """ atomic elements schema """ @@ -922,7 +922,7 @@ class BasisSchema19(BaseModel): """ -class LatticeVectorsSchema18(BaseModel): +class LatticeVectorsSchema14(BaseModel): a: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") b: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") c: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") @@ -933,12 +933,12 @@ class LatticeVectorsSchema18(BaseModel): units: Optional[LatticeVectorsUnitsEnum] = Field("angstrom", title="lattice vectors units enum") -class LatticeUnitsSchema18(BaseModel): +class LatticeUnitsSchema14(BaseModel): length: Optional[LatticeUnitsLengthEnum] = Field("angstrom", title="lattice units length enum") angle: Optional[LatticeUnitsAngleEnum] = Field("degree", title="lattice units angle enum") -class LatticeSchema18(BaseModel): +class LatticeSchema14(BaseModel): a: float """ length of the first lattice vector @@ -963,56 +963,56 @@ class LatticeSchema18(BaseModel): """ angle between first and third lattice vector """ - vectors: Optional[LatticeVectorsSchema18] = Field(None, title="lattice vectors schema") + vectors: Optional[LatticeVectorsSchema14] = Field(None, title="lattice vectors schema") type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum") - units: Optional[LatticeUnitsSchema18] = Field( - default_factory=lambda: LatticeUnitsSchema18.model_validate({"length": "angstrom", "angle": "degree"}), + units: Optional[LatticeUnitsSchema14] = Field( + default_factory=lambda: LatticeUnitsSchema14.model_validate({"length": "angstrom", "angle": "degree"}), title="Lattice units schema", ) -class Name155(Enum): +class Name123(Enum): volume = "volume" -class Units63(Enum): +class Units51(Enum): angstrom_3 = "angstrom^3" -class VolumeSchema18(BaseModel): +class VolumeSchema14(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units63] = None + units: Optional[Units51] = None value: float -class Name156(Enum): +class Name124(Enum): density = "density" -class Units64(Enum): +class Units52(Enum): g_cm_3 = "g/cm^3" -class DensitySchema18(BaseModel): +class DensitySchema14(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units64] = None + units: Optional[Units52] = None value: float -class Units65(Enum): +class Units53(Enum): angstrom = "angstrom" -class ScalarSchema19(BaseModel): - units: Optional[Units65] = None +class ScalarSchema15(BaseModel): + units: Optional[Units53] = None value: float -class Name157(Enum): +class Name125(Enum): symmetry = "symmetry" -class SymmetrySchema18(BaseModel): +class SymmetrySchema14(BaseModel): pointGroupSymbol: Optional[str] = None """ point group symbol in Schoenflies notation @@ -1021,18 +1021,18 @@ class SymmetrySchema18(BaseModel): """ space group symbol in Hermann–Mauguin notation """ - tolerance: Optional[ScalarSchema19] = Field(None, title="scalar schema") + tolerance: Optional[ScalarSchema15] = Field(None, title="scalar schema") """ tolerance used for symmetry calculation """ name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name158(Enum): +class Name126(Enum): elemental_ratio = "elemental_ratio" -class ElementalRatio18(BaseModel): +class ElementalRatio14(BaseModel): name: Literal["3#-datamodel-code-generator-#-object-#-special-#"] value: confloat(ge=0.0, le=1.0) element: Optional[str] = None @@ -1041,11 +1041,11 @@ class ElementalRatio18(BaseModel): """ -class Name159(Enum): +class Name127(Enum): p_norm = "p-norm" -class PNorm18(BaseModel): +class PNorm14(BaseModel): name: Literal["4#-datamodel-code-generator-#-object-#-special-#"] degree: Optional[int] = None """ @@ -1054,49 +1054,49 @@ class PNorm18(BaseModel): value: float -class Name160(Enum): +class Name128(Enum): inchi = "inchi" -class InChIRepresentationSchema18(BaseModel): +class InChIRepresentationSchema14(BaseModel): name: Literal["5#-datamodel-code-generator-#-object-#-special-#"] value: str -class Name161(Enum): +class Name129(Enum): inchi_key = "inchi_key" -class InChIKeyRepresentationSchema18(BaseModel): +class InChIKeyRepresentationSchema14(BaseModel): name: Literal["6#-datamodel-code-generator-#-object-#-special-#"] value: str -class DerivedPropertiesSchema18( +class DerivedPropertiesSchema14( RootModel[ Union[ - VolumeSchema18, - DensitySchema18, - SymmetrySchema18, - ElementalRatio18, - PNorm18, - InChIRepresentationSchema18, - InChIKeyRepresentationSchema18, + VolumeSchema14, + DensitySchema14, + SymmetrySchema14, + ElementalRatio14, + PNorm14, + InChIRepresentationSchema14, + InChIKeyRepresentationSchema14, ] ] ): root: Union[ - VolumeSchema18, - DensitySchema18, - SymmetrySchema18, - ElementalRatio18, - PNorm18, - InChIRepresentationSchema18, - InChIKeyRepresentationSchema18, + VolumeSchema14, + DensitySchema14, + SymmetrySchema14, + ElementalRatio14, + PNorm14, + InChIRepresentationSchema14, + InChIKeyRepresentationSchema14, ] = Field(..., discriminator="name") -class DatabaseSourceSchema18(BaseModel): +class DatabaseSourceSchema14(BaseModel): id: Union[str, float] """ ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32 @@ -1123,14 +1123,14 @@ class DatabaseSourceSchema18(BaseModel): """ -class Name162(Enum): +class Name130(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" -class MaterialConsistencyCheckSchema18(BaseModel): - name: Name162 +class MaterialConsistencyCheckSchema14(BaseModel): + name: Name130 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -1148,7 +1148,7 @@ class MaterialConsistencyCheckSchema18(BaseModel): """ -class BoundaryConditions19(BaseModel): +class BoundaryConditions15(BaseModel): type: Optional[Type] = "pbc" """ If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab. @@ -1156,14 +1156,14 @@ class BoundaryConditions19(BaseModel): offset: float -class MaterialMetadataBoundaryConditions19(BaseModel): +class MaterialMetadataBoundaryConditions15(BaseModel): model_config = ConfigDict( extra="allow", ) - boundaryConditions: Optional[BoundaryConditions19] = None + boundaryConditions: Optional[BoundaryConditions15] = None -class CrystalSchema18(BaseModel): +class CrystalSchema14(BaseModel): id: Optional[str] = Field(None, alias="_id") """ entity identity @@ -1193,10 +1193,10 @@ class CrystalSchema18(BaseModel): """ chemical formula based on the number of atoms of each element in the supercell """ - basis: BasisSchema19 = Field(..., title="basis schema") - lattice: LatticeSchema18 = Field(..., title="lattice schema") - derivedProperties: Optional[List[DerivedPropertiesSchema18]] = Field(None, title="derived properties schema") - external: Optional[DatabaseSourceSchema18] = Field(None, title="database source schema") + basis: BasisSchema15 = Field(..., title="basis schema") + lattice: LatticeSchema14 = Field(..., title="lattice schema") + derivedProperties: Optional[List[DerivedPropertiesSchema14]] = Field(None, title="derived properties schema") + external: Optional[DatabaseSourceSchema14] = Field(None, title="database source schema") """ information about a database source """ @@ -1212,9 +1212,9 @@ class CrystalSchema18(BaseModel): """ Whether to work in the finite molecular picture (usually with atomic orbital basis) """ - consistencyChecks: Optional[List[MaterialConsistencyCheckSchema18]] = None + consistencyChecks: Optional[List[MaterialConsistencyCheckSchema14]] = None metadata: Optional[ - Union[MaterialMetadataBoundaryConditions19, MaterialMetadataSlabProperties, MaterialMetadataBulkProperties] + Union[MaterialMetadataBoundaryConditions15, MaterialMetadataSlabProperties, MaterialMetadataBulkProperties] ] = {} @@ -1227,7 +1227,7 @@ class VacuumConfigurationSchema(BaseModel): """ Size of the vacuum slab in angstroms """ - crystal: CrystalSchema18 = Field(..., title="Crystal Schema") + crystal: CrystalSchema14 = Field(..., title="Crystal Schema") """ A crystal structure, referencing the base material schema """ @@ -1258,7 +1258,7 @@ class SlabConfigurationSchema(BaseModel): """ -class TerminationSchema9(BaseModel): +class TerminationSchema8(BaseModel): chemical_elements: Union[ChemicalElements, constr(pattern=r"^([A-Z][a-z]?[0-9]*)+$")] = Field( ..., title="Chemical Elements" ) @@ -1271,7 +1271,7 @@ class TerminationSchema9(BaseModel): """ -class Value48(Enum): +class Value40(Enum): H = "H" He = "He" Li = "Li" @@ -1392,13 +1392,13 @@ class Value48(Enum): Og = "Og" -class Value49(Enum): +class Value41(Enum): X = "X" Vac = "Vac" -class AtomicElementSchema23(BaseModel): - value: Union[Value48, Value49] +class AtomicElementSchema19(BaseModel): + value: Union[Value40, Value41] """ All elements, including extra elements """ @@ -1408,8 +1408,8 @@ class AtomicElementSchema23(BaseModel): """ -class BasisSchema20(BaseModel): - elements: List[AtomicElementSchema23] = Field(..., title="atomic elements schema") +class BasisSchema16(BaseModel): + elements: List[AtomicElementSchema19] = Field(..., title="atomic elements schema") """ atomic elements schema """ @@ -1424,7 +1424,7 @@ class BasisSchema20(BaseModel): """ -class LatticeVectorsSchema19(BaseModel): +class LatticeVectorsSchema15(BaseModel): a: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") b: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") c: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") @@ -1435,12 +1435,12 @@ class LatticeVectorsSchema19(BaseModel): units: Optional[LatticeVectorsUnitsEnum] = Field("angstrom", title="lattice vectors units enum") -class LatticeUnitsSchema19(BaseModel): +class LatticeUnitsSchema15(BaseModel): length: Optional[LatticeUnitsLengthEnum] = Field("angstrom", title="lattice units length enum") angle: Optional[LatticeUnitsAngleEnum] = Field("degree", title="lattice units angle enum") -class LatticeSchema19(BaseModel): +class LatticeSchema15(BaseModel): a: float """ length of the first lattice vector @@ -1465,56 +1465,56 @@ class LatticeSchema19(BaseModel): """ angle between first and third lattice vector """ - vectors: Optional[LatticeVectorsSchema19] = Field(None, title="lattice vectors schema") + vectors: Optional[LatticeVectorsSchema15] = Field(None, title="lattice vectors schema") type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum") - units: Optional[LatticeUnitsSchema19] = Field( - default_factory=lambda: LatticeUnitsSchema19.model_validate({"length": "angstrom", "angle": "degree"}), + units: Optional[LatticeUnitsSchema15] = Field( + default_factory=lambda: LatticeUnitsSchema15.model_validate({"length": "angstrom", "angle": "degree"}), title="Lattice units schema", ) -class Name163(Enum): +class Name131(Enum): volume = "volume" -class Units66(Enum): +class Units54(Enum): angstrom_3 = "angstrom^3" -class VolumeSchema19(BaseModel): +class VolumeSchema15(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units66] = None + units: Optional[Units54] = None value: float -class Name164(Enum): +class Name132(Enum): density = "density" -class Units67(Enum): +class Units55(Enum): g_cm_3 = "g/cm^3" -class DensitySchema19(BaseModel): +class DensitySchema15(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units67] = None + units: Optional[Units55] = None value: float -class Units68(Enum): +class Units56(Enum): angstrom = "angstrom" -class ScalarSchema20(BaseModel): - units: Optional[Units68] = None +class ScalarSchema16(BaseModel): + units: Optional[Units56] = None value: float -class Name165(Enum): +class Name133(Enum): symmetry = "symmetry" -class SymmetrySchema19(BaseModel): +class SymmetrySchema15(BaseModel): pointGroupSymbol: Optional[str] = None """ point group symbol in Schoenflies notation @@ -1523,18 +1523,18 @@ class SymmetrySchema19(BaseModel): """ space group symbol in Hermann–Mauguin notation """ - tolerance: Optional[ScalarSchema20] = Field(None, title="scalar schema") + tolerance: Optional[ScalarSchema16] = Field(None, title="scalar schema") """ tolerance used for symmetry calculation """ name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name166(Enum): +class Name134(Enum): elemental_ratio = "elemental_ratio" -class ElementalRatio19(BaseModel): +class ElementalRatio15(BaseModel): name: Literal["3#-datamodel-code-generator-#-object-#-special-#"] value: confloat(ge=0.0, le=1.0) element: Optional[str] = None @@ -1543,11 +1543,11 @@ class ElementalRatio19(BaseModel): """ -class Name167(Enum): +class Name135(Enum): p_norm = "p-norm" -class PNorm19(BaseModel): +class PNorm15(BaseModel): name: Literal["4#-datamodel-code-generator-#-object-#-special-#"] degree: Optional[int] = None """ @@ -1556,49 +1556,49 @@ class PNorm19(BaseModel): value: float -class Name168(Enum): +class Name136(Enum): inchi = "inchi" -class InChIRepresentationSchema19(BaseModel): +class InChIRepresentationSchema15(BaseModel): name: Literal["5#-datamodel-code-generator-#-object-#-special-#"] value: str -class Name169(Enum): +class Name137(Enum): inchi_key = "inchi_key" -class InChIKeyRepresentationSchema19(BaseModel): +class InChIKeyRepresentationSchema15(BaseModel): name: Literal["6#-datamodel-code-generator-#-object-#-special-#"] value: str -class DerivedPropertiesSchema19( +class DerivedPropertiesSchema15( RootModel[ Union[ - VolumeSchema19, - DensitySchema19, - SymmetrySchema19, - ElementalRatio19, - PNorm19, - InChIRepresentationSchema19, - InChIKeyRepresentationSchema19, + VolumeSchema15, + DensitySchema15, + SymmetrySchema15, + ElementalRatio15, + PNorm15, + InChIRepresentationSchema15, + InChIKeyRepresentationSchema15, ] ] ): root: Union[ - VolumeSchema19, - DensitySchema19, - SymmetrySchema19, - ElementalRatio19, - PNorm19, - InChIRepresentationSchema19, - InChIKeyRepresentationSchema19, + VolumeSchema15, + DensitySchema15, + SymmetrySchema15, + ElementalRatio15, + PNorm15, + InChIRepresentationSchema15, + InChIKeyRepresentationSchema15, ] = Field(..., discriminator="name") -class DatabaseSourceSchema19(BaseModel): +class DatabaseSourceSchema15(BaseModel): id: Union[str, float] """ ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32 @@ -1625,14 +1625,14 @@ class DatabaseSourceSchema19(BaseModel): """ -class Name170(Enum): +class Name138(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" -class MaterialConsistencyCheckSchema19(BaseModel): - name: Name170 +class MaterialConsistencyCheckSchema15(BaseModel): + name: Name138 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -1650,7 +1650,7 @@ class MaterialConsistencyCheckSchema19(BaseModel): """ -class BoundaryConditions20(BaseModel): +class BoundaryConditions16(BaseModel): type: Optional[Type] = "pbc" """ If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab. @@ -1658,14 +1658,14 @@ class BoundaryConditions20(BaseModel): offset: float -class MaterialMetadataBoundaryConditions20(BaseModel): +class MaterialMetadataBoundaryConditions16(BaseModel): model_config = ConfigDict( extra="allow", ) - boundaryConditions: Optional[BoundaryConditions20] = None + boundaryConditions: Optional[BoundaryConditions16] = None -class CrystalSchema19(BaseModel): +class CrystalSchema15(BaseModel): id: Optional[str] = Field(None, alias="_id") """ entity identity @@ -1695,10 +1695,10 @@ class CrystalSchema19(BaseModel): """ chemical formula based on the number of atoms of each element in the supercell """ - basis: BasisSchema20 = Field(..., title="basis schema") - lattice: LatticeSchema19 = Field(..., title="lattice schema") - derivedProperties: Optional[List[DerivedPropertiesSchema19]] = Field(None, title="derived properties schema") - external: Optional[DatabaseSourceSchema19] = Field(None, title="database source schema") + basis: BasisSchema16 = Field(..., title="basis schema") + lattice: LatticeSchema15 = Field(..., title="lattice schema") + derivedProperties: Optional[List[DerivedPropertiesSchema15]] = Field(None, title="derived properties schema") + external: Optional[DatabaseSourceSchema15] = Field(None, title="database source schema") """ information about a database source """ @@ -1714,14 +1714,14 @@ class CrystalSchema19(BaseModel): """ Whether to work in the finite molecular picture (usually with atomic orbital basis) """ - consistencyChecks: Optional[List[MaterialConsistencyCheckSchema19]] = None + consistencyChecks: Optional[List[MaterialConsistencyCheckSchema15]] = None metadata: Optional[ - Union[MaterialMetadataBoundaryConditions20, MaterialMetadataSlabProperties, MaterialMetadataBulkProperties] + Union[MaterialMetadataBoundaryConditions16, MaterialMetadataSlabProperties, MaterialMetadataBulkProperties] ] = {} -class AtomicLayersUniqueRepeatedSchema7(BaseModel): - termination_top: TerminationSchema9 = Field(..., title="Termination Schema") +class AtomicLayersUniqueRepeatedSchema6(BaseModel): + termination_top: TerminationSchema8 = Field(..., title="Termination Schema") """ Defines a specific termination of a slab """ @@ -1733,7 +1733,7 @@ class AtomicLayersUniqueRepeatedSchema7(BaseModel): """ Miller indices [h, k, l] defining crystallographic planes """ - crystal: CrystalSchema19 = Field(..., title="Crystal Schema") + crystal: CrystalSchema15 = Field(..., title="Crystal Schema") """ A crystal structure, referencing the base material schema """ @@ -1743,7 +1743,7 @@ class AtomicLayersUniqueRepeatedSchema7(BaseModel): """ -class Value50(Enum): +class Value42(Enum): H = "H" He = "He" Li = "Li" @@ -1864,13 +1864,13 @@ class Value50(Enum): Og = "Og" -class Value51(Enum): +class Value43(Enum): X = "X" Vac = "Vac" -class AtomicElementSchema24(BaseModel): - value: Union[Value50, Value51] +class AtomicElementSchema20(BaseModel): + value: Union[Value42, Value43] """ All elements, including extra elements """ @@ -1880,8 +1880,8 @@ class AtomicElementSchema24(BaseModel): """ -class BasisSchema21(BaseModel): - elements: List[AtomicElementSchema24] = Field(..., title="atomic elements schema") +class BasisSchema17(BaseModel): + elements: List[AtomicElementSchema20] = Field(..., title="atomic elements schema") """ atomic elements schema """ @@ -1896,7 +1896,7 @@ class BasisSchema21(BaseModel): """ -class LatticeVectorsSchema20(BaseModel): +class LatticeVectorsSchema16(BaseModel): a: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") b: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") c: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") @@ -1907,12 +1907,12 @@ class LatticeVectorsSchema20(BaseModel): units: Optional[LatticeVectorsUnitsEnum] = Field("angstrom", title="lattice vectors units enum") -class LatticeUnitsSchema20(BaseModel): +class LatticeUnitsSchema16(BaseModel): length: Optional[LatticeUnitsLengthEnum] = Field("angstrom", title="lattice units length enum") angle: Optional[LatticeUnitsAngleEnum] = Field("degree", title="lattice units angle enum") -class LatticeSchema20(BaseModel): +class LatticeSchema16(BaseModel): a: float """ length of the first lattice vector @@ -1937,56 +1937,56 @@ class LatticeSchema20(BaseModel): """ angle between first and third lattice vector """ - vectors: Optional[LatticeVectorsSchema20] = Field(None, title="lattice vectors schema") + vectors: Optional[LatticeVectorsSchema16] = Field(None, title="lattice vectors schema") type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum") - units: Optional[LatticeUnitsSchema20] = Field( - default_factory=lambda: LatticeUnitsSchema20.model_validate({"length": "angstrom", "angle": "degree"}), + units: Optional[LatticeUnitsSchema16] = Field( + default_factory=lambda: LatticeUnitsSchema16.model_validate({"length": "angstrom", "angle": "degree"}), title="Lattice units schema", ) -class Name171(Enum): +class Name139(Enum): volume = "volume" -class Units69(Enum): +class Units57(Enum): angstrom_3 = "angstrom^3" -class VolumeSchema20(BaseModel): +class VolumeSchema16(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units69] = None + units: Optional[Units57] = None value: float -class Name172(Enum): +class Name140(Enum): density = "density" -class Units70(Enum): +class Units58(Enum): g_cm_3 = "g/cm^3" -class DensitySchema20(BaseModel): +class DensitySchema16(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units70] = None + units: Optional[Units58] = None value: float -class Units71(Enum): +class Units59(Enum): angstrom = "angstrom" -class ScalarSchema21(BaseModel): - units: Optional[Units71] = None +class ScalarSchema17(BaseModel): + units: Optional[Units59] = None value: float -class Name173(Enum): +class Name141(Enum): symmetry = "symmetry" -class SymmetrySchema20(BaseModel): +class SymmetrySchema16(BaseModel): pointGroupSymbol: Optional[str] = None """ point group symbol in Schoenflies notation @@ -1995,18 +1995,18 @@ class SymmetrySchema20(BaseModel): """ space group symbol in Hermann–Mauguin notation """ - tolerance: Optional[ScalarSchema21] = Field(None, title="scalar schema") + tolerance: Optional[ScalarSchema17] = Field(None, title="scalar schema") """ tolerance used for symmetry calculation """ name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name174(Enum): +class Name142(Enum): elemental_ratio = "elemental_ratio" -class ElementalRatio20(BaseModel): +class ElementalRatio16(BaseModel): name: Literal["3#-datamodel-code-generator-#-object-#-special-#"] value: confloat(ge=0.0, le=1.0) element: Optional[str] = None @@ -2015,11 +2015,11 @@ class ElementalRatio20(BaseModel): """ -class Name175(Enum): +class Name143(Enum): p_norm = "p-norm" -class PNorm20(BaseModel): +class PNorm16(BaseModel): name: Literal["4#-datamodel-code-generator-#-object-#-special-#"] degree: Optional[int] = None """ @@ -2028,49 +2028,49 @@ class PNorm20(BaseModel): value: float -class Name176(Enum): +class Name144(Enum): inchi = "inchi" -class InChIRepresentationSchema20(BaseModel): +class InChIRepresentationSchema16(BaseModel): name: Literal["5#-datamodel-code-generator-#-object-#-special-#"] value: str -class Name177(Enum): +class Name145(Enum): inchi_key = "inchi_key" -class InChIKeyRepresentationSchema20(BaseModel): +class InChIKeyRepresentationSchema16(BaseModel): name: Literal["6#-datamodel-code-generator-#-object-#-special-#"] value: str -class DerivedPropertiesSchema20( +class DerivedPropertiesSchema16( RootModel[ Union[ - VolumeSchema20, - DensitySchema20, - SymmetrySchema20, - ElementalRatio20, - PNorm20, - InChIRepresentationSchema20, - InChIKeyRepresentationSchema20, + VolumeSchema16, + DensitySchema16, + SymmetrySchema16, + ElementalRatio16, + PNorm16, + InChIRepresentationSchema16, + InChIKeyRepresentationSchema16, ] ] ): root: Union[ - VolumeSchema20, - DensitySchema20, - SymmetrySchema20, - ElementalRatio20, - PNorm20, - InChIRepresentationSchema20, - InChIKeyRepresentationSchema20, + VolumeSchema16, + DensitySchema16, + SymmetrySchema16, + ElementalRatio16, + PNorm16, + InChIRepresentationSchema16, + InChIKeyRepresentationSchema16, ] = Field(..., discriminator="name") -class DatabaseSourceSchema20(BaseModel): +class DatabaseSourceSchema16(BaseModel): id: Union[str, float] """ ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32 @@ -2097,14 +2097,14 @@ class DatabaseSourceSchema20(BaseModel): """ -class Name178(Enum): +class Name146(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" -class MaterialConsistencyCheckSchema20(BaseModel): - name: Name178 +class MaterialConsistencyCheckSchema16(BaseModel): + name: Name146 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -2122,7 +2122,7 @@ class MaterialConsistencyCheckSchema20(BaseModel): """ -class BoundaryConditions21(BaseModel): +class BoundaryConditions17(BaseModel): type: Optional[Type] = "pbc" """ If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab. @@ -2130,14 +2130,14 @@ class BoundaryConditions21(BaseModel): offset: float -class MaterialMetadataBoundaryConditions21(BaseModel): +class MaterialMetadataBoundaryConditions17(BaseModel): model_config = ConfigDict( extra="allow", ) - boundaryConditions: Optional[BoundaryConditions21] = None + boundaryConditions: Optional[BoundaryConditions17] = None -class CrystalSchema20(BaseModel): +class CrystalSchema16(BaseModel): id: Optional[str] = Field(None, alias="_id") """ entity identity @@ -2167,10 +2167,10 @@ class CrystalSchema20(BaseModel): """ chemical formula based on the number of atoms of each element in the supercell """ - basis: BasisSchema21 = Field(..., title="basis schema") - lattice: LatticeSchema20 = Field(..., title="lattice schema") - derivedProperties: Optional[List[DerivedPropertiesSchema20]] = Field(None, title="derived properties schema") - external: Optional[DatabaseSourceSchema20] = Field(None, title="database source schema") + basis: BasisSchema17 = Field(..., title="basis schema") + lattice: LatticeSchema16 = Field(..., title="lattice schema") + derivedProperties: Optional[List[DerivedPropertiesSchema16]] = Field(None, title="derived properties schema") + external: Optional[DatabaseSourceSchema16] = Field(None, title="database source schema") """ information about a database source """ @@ -2186,13 +2186,13 @@ class CrystalSchema20(BaseModel): """ Whether to work in the finite molecular picture (usually with atomic orbital basis) """ - consistencyChecks: Optional[List[MaterialConsistencyCheckSchema20]] = None + consistencyChecks: Optional[List[MaterialConsistencyCheckSchema16]] = None metadata: Optional[ - Union[MaterialMetadataBoundaryConditions21, MaterialMetadataSlabProperties, MaterialMetadataBulkProperties] + Union[MaterialMetadataBoundaryConditions17, MaterialMetadataSlabProperties, MaterialMetadataBulkProperties] ] = {} -class VacuumConfigurationSchema8(BaseModel): +class VacuumConfigurationSchema6(BaseModel): direction: AxisEnum = Field(..., title="Axis Enum") """ Enum for axis types @@ -2201,14 +2201,14 @@ class VacuumConfigurationSchema8(BaseModel): """ Size of the vacuum slab in angstroms """ - crystal: CrystalSchema20 = Field(..., title="Crystal Schema") + crystal: CrystalSchema16 = Field(..., title="Crystal Schema") """ A crystal structure, referencing the base material schema """ -class SlabConfigurationSchema4(BaseModel): - stack_components: List[Union[AtomicLayersUniqueRepeatedSchema7, VacuumConfigurationSchema8]] = Field( +class SlabConfigurationSchema3(BaseModel): + stack_components: List[Union[AtomicLayersUniqueRepeatedSchema6, VacuumConfigurationSchema6]] = Field( ..., max_length=2, min_length=2 ) direction: Optional[AxisEnum] = Field("z", title="Axis Enum") @@ -2221,7 +2221,7 @@ class SlabConfigurationSchema4(BaseModel): """ -class Value52(Enum): +class Value44(Enum): H = "H" He = "He" Li = "Li" @@ -2342,13 +2342,13 @@ class Value52(Enum): Og = "Og" -class Value53(Enum): +class Value45(Enum): X = "X" Vac = "Vac" -class AtomicElementSchema25(BaseModel): - value: Union[Value52, Value53] +class AtomicElementSchema21(BaseModel): + value: Union[Value44, Value45] """ All elements, including extra elements """ @@ -2358,8 +2358,8 @@ class AtomicElementSchema25(BaseModel): """ -class BasisSchema22(BaseModel): - elements: List[AtomicElementSchema25] = Field(..., title="atomic elements schema") +class BasisSchema18(BaseModel): + elements: List[AtomicElementSchema21] = Field(..., title="atomic elements schema") """ atomic elements schema """ @@ -2374,7 +2374,7 @@ class BasisSchema22(BaseModel): """ -class LatticeVectorsSchema21(BaseModel): +class LatticeVectorsSchema17(BaseModel): a: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") b: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") c: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") @@ -2385,12 +2385,12 @@ class LatticeVectorsSchema21(BaseModel): units: Optional[LatticeVectorsUnitsEnum] = Field("angstrom", title="lattice vectors units enum") -class LatticeUnitsSchema21(BaseModel): +class LatticeUnitsSchema17(BaseModel): length: Optional[LatticeUnitsLengthEnum] = Field("angstrom", title="lattice units length enum") angle: Optional[LatticeUnitsAngleEnum] = Field("degree", title="lattice units angle enum") -class LatticeSchema21(BaseModel): +class LatticeSchema17(BaseModel): a: float """ length of the first lattice vector @@ -2415,56 +2415,56 @@ class LatticeSchema21(BaseModel): """ angle between first and third lattice vector """ - vectors: Optional[LatticeVectorsSchema21] = Field(None, title="lattice vectors schema") + vectors: Optional[LatticeVectorsSchema17] = Field(None, title="lattice vectors schema") type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum") - units: Optional[LatticeUnitsSchema21] = Field( - default_factory=lambda: LatticeUnitsSchema21.model_validate({"length": "angstrom", "angle": "degree"}), + units: Optional[LatticeUnitsSchema17] = Field( + default_factory=lambda: LatticeUnitsSchema17.model_validate({"length": "angstrom", "angle": "degree"}), title="Lattice units schema", ) -class Name179(Enum): +class Name147(Enum): volume = "volume" -class Units72(Enum): +class Units60(Enum): angstrom_3 = "angstrom^3" -class VolumeSchema21(BaseModel): +class VolumeSchema17(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units72] = None + units: Optional[Units60] = None value: float -class Name180(Enum): +class Name148(Enum): density = "density" -class Units73(Enum): +class Units61(Enum): g_cm_3 = "g/cm^3" -class DensitySchema21(BaseModel): +class DensitySchema17(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units73] = None + units: Optional[Units61] = None value: float -class Units74(Enum): +class Units62(Enum): angstrom = "angstrom" -class ScalarSchema22(BaseModel): - units: Optional[Units74] = None +class ScalarSchema18(BaseModel): + units: Optional[Units62] = None value: float -class Name181(Enum): +class Name149(Enum): symmetry = "symmetry" -class SymmetrySchema21(BaseModel): +class SymmetrySchema17(BaseModel): pointGroupSymbol: Optional[str] = None """ point group symbol in Schoenflies notation @@ -2473,18 +2473,18 @@ class SymmetrySchema21(BaseModel): """ space group symbol in Hermann–Mauguin notation """ - tolerance: Optional[ScalarSchema22] = Field(None, title="scalar schema") + tolerance: Optional[ScalarSchema18] = Field(None, title="scalar schema") """ tolerance used for symmetry calculation """ name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name182(Enum): +class Name150(Enum): elemental_ratio = "elemental_ratio" -class ElementalRatio21(BaseModel): +class ElementalRatio17(BaseModel): name: Literal["3#-datamodel-code-generator-#-object-#-special-#"] value: confloat(ge=0.0, le=1.0) element: Optional[str] = None @@ -2493,11 +2493,11 @@ class ElementalRatio21(BaseModel): """ -class Name183(Enum): +class Name151(Enum): p_norm = "p-norm" -class PNorm21(BaseModel): +class PNorm17(BaseModel): name: Literal["4#-datamodel-code-generator-#-object-#-special-#"] degree: Optional[int] = None """ @@ -2506,49 +2506,49 @@ class PNorm21(BaseModel): value: float -class Name184(Enum): +class Name152(Enum): inchi = "inchi" -class InChIRepresentationSchema21(BaseModel): +class InChIRepresentationSchema17(BaseModel): name: Literal["5#-datamodel-code-generator-#-object-#-special-#"] value: str -class Name185(Enum): +class Name153(Enum): inchi_key = "inchi_key" -class InChIKeyRepresentationSchema21(BaseModel): +class InChIKeyRepresentationSchema17(BaseModel): name: Literal["6#-datamodel-code-generator-#-object-#-special-#"] value: str -class DerivedPropertiesSchema21( +class DerivedPropertiesSchema17( RootModel[ Union[ - VolumeSchema21, - DensitySchema21, - SymmetrySchema21, - ElementalRatio21, - PNorm21, - InChIRepresentationSchema21, - InChIKeyRepresentationSchema21, + VolumeSchema17, + DensitySchema17, + SymmetrySchema17, + ElementalRatio17, + PNorm17, + InChIRepresentationSchema17, + InChIKeyRepresentationSchema17, ] ] ): root: Union[ - VolumeSchema21, - DensitySchema21, - SymmetrySchema21, - ElementalRatio21, - PNorm21, - InChIRepresentationSchema21, - InChIKeyRepresentationSchema21, + VolumeSchema17, + DensitySchema17, + SymmetrySchema17, + ElementalRatio17, + PNorm17, + InChIRepresentationSchema17, + InChIKeyRepresentationSchema17, ] = Field(..., discriminator="name") -class DatabaseSourceSchema21(BaseModel): +class DatabaseSourceSchema17(BaseModel): id: Union[str, float] """ ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32 @@ -2575,14 +2575,14 @@ class DatabaseSourceSchema21(BaseModel): """ -class Name186(Enum): +class Name154(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" -class MaterialConsistencyCheckSchema21(BaseModel): - name: Name186 +class MaterialConsistencyCheckSchema17(BaseModel): + name: Name154 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -2600,7 +2600,7 @@ class MaterialConsistencyCheckSchema21(BaseModel): """ -class BoundaryConditions22(BaseModel): +class BoundaryConditions18(BaseModel): type: Optional[Type] = "pbc" """ If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab. @@ -2608,14 +2608,14 @@ class BoundaryConditions22(BaseModel): offset: float -class MaterialMetadataBoundaryConditions22(BaseModel): +class MaterialMetadataBoundaryConditions18(BaseModel): model_config = ConfigDict( extra="allow", ) - boundaryConditions: Optional[BoundaryConditions22] = None + boundaryConditions: Optional[BoundaryConditions18] = None -class CrystalSchema21(BaseModel): +class CrystalSchema17(BaseModel): id: Optional[str] = Field(None, alias="_id") """ entity identity @@ -2645,10 +2645,10 @@ class CrystalSchema21(BaseModel): """ chemical formula based on the number of atoms of each element in the supercell """ - basis: BasisSchema22 = Field(..., title="basis schema") - lattice: LatticeSchema21 = Field(..., title="lattice schema") - derivedProperties: Optional[List[DerivedPropertiesSchema21]] = Field(None, title="derived properties schema") - external: Optional[DatabaseSourceSchema21] = Field(None, title="database source schema") + basis: BasisSchema18 = Field(..., title="basis schema") + lattice: LatticeSchema17 = Field(..., title="lattice schema") + derivedProperties: Optional[List[DerivedPropertiesSchema17]] = Field(None, title="derived properties schema") + external: Optional[DatabaseSourceSchema17] = Field(None, title="database source schema") """ information about a database source """ @@ -2664,9 +2664,9 @@ class CrystalSchema21(BaseModel): """ Whether to work in the finite molecular picture (usually with atomic orbital basis) """ - consistencyChecks: Optional[List[MaterialConsistencyCheckSchema21]] = None + consistencyChecks: Optional[List[MaterialConsistencyCheckSchema17]] = None metadata: Optional[ - Union[MaterialMetadataBoundaryConditions22, MaterialMetadataSlabProperties, MaterialMetadataBulkProperties] + Union[MaterialMetadataBoundaryConditions18, MaterialMetadataSlabProperties, MaterialMetadataBulkProperties] ] = {} @@ -2718,7 +2718,7 @@ class PlaneCoordinateConditionSchema(BaseModel): class VoidRegionSchema(BaseModel): - crystal: CrystalSchema21 = Field(..., title="Crystal Schema") + crystal: CrystalSchema17 = Field(..., title="Crystal Schema") """ A crystal structure, referencing the base material schema """ @@ -2741,14 +2741,14 @@ class MergeMethodsEnum(Enum): class MergeSchema(BaseModel): - merge_components: List[Union[SlabConfigurationSchema4, VoidRegionSchema]] = Field(..., max_length=2, min_length=2) + merge_components: List[Union[SlabConfigurationSchema3, VoidRegionSchema]] = Field(..., max_length=2, min_length=2) merge_method: Optional[MergeMethodsEnum] = Field("REPLACE", title="Merge Methods Enum") """ Available methods for merging components """ -class Value54(Enum): +class Value46(Enum): H = "H" He = "He" Li = "Li" @@ -2869,13 +2869,13 @@ class Value54(Enum): Og = "Og" -class Value55(Enum): +class Value47(Enum): X = "X" Vac = "Vac" -class AtomicElementSchema26(BaseModel): - value: Union[Value54, Value55] +class AtomicElementSchema22(BaseModel): + value: Union[Value46, Value47] """ All elements, including extra elements """ @@ -2885,8 +2885,8 @@ class AtomicElementSchema26(BaseModel): """ -class BasisSchema23(BaseModel): - elements: List[AtomicElementSchema26] = Field(..., title="atomic elements schema") +class BasisSchema19(BaseModel): + elements: List[AtomicElementSchema22] = Field(..., title="atomic elements schema") """ atomic elements schema """ @@ -2901,7 +2901,7 @@ class BasisSchema23(BaseModel): """ -class LatticeVectorsSchema22(BaseModel): +class LatticeVectorsSchema18(BaseModel): a: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") b: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") c: List[float] = Field(..., max_length=3, min_length=3, title="vector 3d schema") @@ -2912,12 +2912,12 @@ class LatticeVectorsSchema22(BaseModel): units: Optional[LatticeVectorsUnitsEnum] = Field("angstrom", title="lattice vectors units enum") -class LatticeUnitsSchema22(BaseModel): +class LatticeUnitsSchema18(BaseModel): length: Optional[LatticeUnitsLengthEnum] = Field("angstrom", title="lattice units length enum") angle: Optional[LatticeUnitsAngleEnum] = Field("degree", title="lattice units angle enum") -class LatticeSchema22(BaseModel): +class LatticeSchema18(BaseModel): a: float """ length of the first lattice vector @@ -2942,56 +2942,56 @@ class LatticeSchema22(BaseModel): """ angle between first and third lattice vector """ - vectors: Optional[LatticeVectorsSchema22] = Field(None, title="lattice vectors schema") + vectors: Optional[LatticeVectorsSchema18] = Field(None, title="lattice vectors schema") type: Optional[LatticeTypeEnum] = Field("TRI", title="lattice type enum") - units: Optional[LatticeUnitsSchema22] = Field( - default_factory=lambda: LatticeUnitsSchema22.model_validate({"length": "angstrom", "angle": "degree"}), + units: Optional[LatticeUnitsSchema18] = Field( + default_factory=lambda: LatticeUnitsSchema18.model_validate({"length": "angstrom", "angle": "degree"}), title="Lattice units schema", ) -class Name187(Enum): +class Name155(Enum): volume = "volume" -class Units75(Enum): +class Units63(Enum): angstrom_3 = "angstrom^3" -class VolumeSchema22(BaseModel): +class VolumeSchema18(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units75] = None + units: Optional[Units63] = None value: float -class Name188(Enum): +class Name156(Enum): density = "density" -class Units76(Enum): +class Units64(Enum): g_cm_3 = "g/cm^3" -class DensitySchema22(BaseModel): +class DensitySchema18(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units76] = None + units: Optional[Units64] = None value: float -class Units77(Enum): +class Units65(Enum): angstrom = "angstrom" -class ScalarSchema23(BaseModel): - units: Optional[Units77] = None +class ScalarSchema19(BaseModel): + units: Optional[Units65] = None value: float -class Name189(Enum): +class Name157(Enum): symmetry = "symmetry" -class SymmetrySchema22(BaseModel): +class SymmetrySchema18(BaseModel): pointGroupSymbol: Optional[str] = None """ point group symbol in Schoenflies notation @@ -3000,18 +3000,18 @@ class SymmetrySchema22(BaseModel): """ space group symbol in Hermann–Mauguin notation """ - tolerance: Optional[ScalarSchema23] = Field(None, title="scalar schema") + tolerance: Optional[ScalarSchema19] = Field(None, title="scalar schema") """ tolerance used for symmetry calculation """ name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name190(Enum): +class Name158(Enum): elemental_ratio = "elemental_ratio" -class ElementalRatio22(BaseModel): +class ElementalRatio18(BaseModel): name: Literal["3#-datamodel-code-generator-#-object-#-special-#"] value: confloat(ge=0.0, le=1.0) element: Optional[str] = None @@ -3020,11 +3020,11 @@ class ElementalRatio22(BaseModel): """ -class Name191(Enum): +class Name159(Enum): p_norm = "p-norm" -class PNorm22(BaseModel): +class PNorm18(BaseModel): name: Literal["4#-datamodel-code-generator-#-object-#-special-#"] degree: Optional[int] = None """ @@ -3033,49 +3033,49 @@ class PNorm22(BaseModel): value: float -class Name192(Enum): +class Name160(Enum): inchi = "inchi" -class InChIRepresentationSchema22(BaseModel): +class InChIRepresentationSchema18(BaseModel): name: Literal["5#-datamodel-code-generator-#-object-#-special-#"] value: str -class Name193(Enum): +class Name161(Enum): inchi_key = "inchi_key" -class InChIKeyRepresentationSchema22(BaseModel): +class InChIKeyRepresentationSchema18(BaseModel): name: Literal["6#-datamodel-code-generator-#-object-#-special-#"] value: str -class DerivedPropertiesSchema22( +class DerivedPropertiesSchema18( RootModel[ Union[ - VolumeSchema22, - DensitySchema22, - SymmetrySchema22, - ElementalRatio22, - PNorm22, - InChIRepresentationSchema22, - InChIKeyRepresentationSchema22, + VolumeSchema18, + DensitySchema18, + SymmetrySchema18, + ElementalRatio18, + PNorm18, + InChIRepresentationSchema18, + InChIKeyRepresentationSchema18, ] ] ): root: Union[ - VolumeSchema22, - DensitySchema22, - SymmetrySchema22, - ElementalRatio22, - PNorm22, - InChIRepresentationSchema22, - InChIKeyRepresentationSchema22, + VolumeSchema18, + DensitySchema18, + SymmetrySchema18, + ElementalRatio18, + PNorm18, + InChIRepresentationSchema18, + InChIKeyRepresentationSchema18, ] = Field(..., discriminator="name") -class DatabaseSourceSchema22(BaseModel): +class DatabaseSourceSchema18(BaseModel): id: Union[str, float] """ ID string for the materials uploaded from a third party source inside the third party source. For materialsproject.org an example ID is mp-32 @@ -3102,14 +3102,14 @@ class DatabaseSourceSchema22(BaseModel): """ -class Name194(Enum): +class Name162(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" -class MaterialConsistencyCheckSchema22(BaseModel): - name: Name194 +class MaterialConsistencyCheckSchema18(BaseModel): + name: Name162 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -3127,7 +3127,7 @@ class MaterialConsistencyCheckSchema22(BaseModel): """ -class BoundaryConditions23(BaseModel): +class BoundaryConditions19(BaseModel): type: Optional[Type] = "pbc" """ If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab. @@ -3135,14 +3135,14 @@ class BoundaryConditions23(BaseModel): offset: float -class MaterialMetadataBoundaryConditions23(BaseModel): +class MaterialMetadataBoundaryConditions19(BaseModel): model_config = ConfigDict( extra="allow", ) - boundaryConditions: Optional[BoundaryConditions23] = None + boundaryConditions: Optional[BoundaryConditions19] = None -class CrystalSchema22(BaseModel): +class CrystalSchema18(BaseModel): id: Optional[str] = Field(None, alias="_id") """ entity identity @@ -3172,10 +3172,10 @@ class CrystalSchema22(BaseModel): """ chemical formula based on the number of atoms of each element in the supercell """ - basis: BasisSchema23 = Field(..., title="basis schema") - lattice: LatticeSchema22 = Field(..., title="lattice schema") - derivedProperties: Optional[List[DerivedPropertiesSchema22]] = Field(None, title="derived properties schema") - external: Optional[DatabaseSourceSchema22] = Field(None, title="database source schema") + basis: BasisSchema19 = Field(..., title="basis schema") + lattice: LatticeSchema18 = Field(..., title="lattice schema") + derivedProperties: Optional[List[DerivedPropertiesSchema18]] = Field(None, title="derived properties schema") + external: Optional[DatabaseSourceSchema18] = Field(None, title="database source schema") """ information about a database source """ @@ -3191,13 +3191,13 @@ class CrystalSchema22(BaseModel): """ Whether to work in the finite molecular picture (usually with atomic orbital basis) """ - consistencyChecks: Optional[List[MaterialConsistencyCheckSchema22]] = None + consistencyChecks: Optional[List[MaterialConsistencyCheckSchema18]] = None metadata: Optional[ - Union[MaterialMetadataBoundaryConditions23, MaterialMetadataSlabProperties, MaterialMetadataBulkProperties] + Union[MaterialMetadataBoundaryConditions19, MaterialMetadataSlabProperties, MaterialMetadataBulkProperties] ] = {} -class VacuumConfigurationSchema9(BaseModel): +class VacuumConfigurationSchema7(BaseModel): direction: AxisEnum = Field(..., title="Axis Enum") """ Enum for axis types @@ -3206,14 +3206,14 @@ class VacuumConfigurationSchema9(BaseModel): """ Size of the vacuum slab in angstroms """ - crystal: CrystalSchema22 = Field(..., title="Crystal Schema") + crystal: CrystalSchema18 = Field(..., title="Crystal Schema") """ A crystal structure, referencing the base material schema """ class TerraceDefectConfigurationSchema(BaseModel): - stack_components: List[Union[SlabConfigurationSchema, MergeSchema, VacuumConfigurationSchema9]] = Field( + stack_components: List[Union[SlabConfigurationSchema, MergeSchema, VacuumConfigurationSchema7]] = Field( ..., max_length=3, min_length=3 ) cut_direction: Optional[List[int]] = Field([0, 0, 1], max_length=3, min_length=3, title="Miller Indices Schema") diff --git a/src/py/mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/interstitial.py b/src/py/mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/interstitial.py index d4f4d7e29..ccbea5274 100644 --- a/src/py/mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/interstitial.py +++ b/src/py/mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/interstitial.py @@ -285,30 +285,30 @@ class VolumeSchema(BaseModel): value: float -class Name588(Enum): +class Name590(Enum): density = "density" -class Units268(Enum): +class Units272(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units268] = None + units: Optional[Units272] = None value: float -class Units269(Enum): +class Units273(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units269] = None + units: Optional[Units273] = None value: float -class Name589(Enum): +class Name591(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name590(Enum): +class Name592(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name591(Enum): +class Name593(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name592(Enum): +class Name594(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name593(Enum): +class Name595(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name594(Enum): +class Name596(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name594 + name: Name596 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -808,44 +808,44 @@ class LatticeSchema60(BaseModel): ) -class Name595(Enum): +class Name597(Enum): volume = "volume" -class Units270(Enum): +class Units274(Enum): angstrom_3 = "angstrom^3" class VolumeSchema61(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units270] = None + units: Optional[Units274] = None value: float -class Name596(Enum): +class Name598(Enum): density = "density" -class Units271(Enum): +class Units275(Enum): g_cm_3 = "g/cm^3" class DensitySchema62(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units271] = None + units: Optional[Units275] = None value: float -class Units272(Enum): +class Units276(Enum): angstrom = "angstrom" class ScalarSchema76(BaseModel): - units: Optional[Units272] = None + units: Optional[Units276] = None value: float -class Name597(Enum): +class Name599(Enum): symmetry = "symmetry" @@ -865,7 +865,7 @@ class SymmetrySchema61(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name598(Enum): +class Name600(Enum): elemental_ratio = "elemental_ratio" @@ -878,7 +878,7 @@ class ElementalRatio62(BaseModel): """ -class Name599(Enum): +class Name601(Enum): p_norm = "p-norm" @@ -891,7 +891,7 @@ class PNorm61(BaseModel): value: float -class Name600(Enum): +class Name602(Enum): inchi = "inchi" @@ -900,7 +900,7 @@ class InChIRepresentationSchema62(BaseModel): value: str -class Name601(Enum): +class Name603(Enum): inchi_key = "inchi_key" @@ -960,14 +960,14 @@ class DatabaseSourceSchema61(BaseModel): """ -class Name602(Enum): +class Name604(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" class MaterialConsistencyCheckSchema61(BaseModel): - name: Name602 + name: Name604 """ Name of the consistency check that is performed, which is listed in an enum. """ diff --git a/src/py/mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/substitutional.py b/src/py/mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/substitutional.py index 07b7a37c3..f023145a3 100644 --- a/src/py/mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/substitutional.py +++ b/src/py/mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/substitutional.py @@ -285,30 +285,30 @@ class VolumeSchema(BaseModel): value: float -class Name810(Enum): +class Name814(Enum): density = "density" -class Units355(Enum): +class Units360(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units355] = None + units: Optional[Units360] = None value: float -class Units356(Enum): +class Units361(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units356] = None + units: Optional[Units361] = None value: float -class Name811(Enum): +class Name815(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name812(Enum): +class Name816(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name813(Enum): +class Name817(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name814(Enum): +class Name818(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name815(Enum): +class Name819(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name816(Enum): +class Name820(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name816 + name: Name820 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -808,44 +808,44 @@ class LatticeSchema84(BaseModel): ) -class Name817(Enum): +class Name821(Enum): volume = "volume" -class Units357(Enum): +class Units362(Enum): angstrom_3 = "angstrom^3" class VolumeSchema84(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units357] = None + units: Optional[Units362] = None value: float -class Name818(Enum): +class Name822(Enum): density = "density" -class Units358(Enum): +class Units363(Enum): g_cm_3 = "g/cm^3" class DensitySchema85(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units358] = None + units: Optional[Units363] = None value: float -class Units359(Enum): +class Units364(Enum): angstrom = "angstrom" class ScalarSchema100(BaseModel): - units: Optional[Units359] = None + units: Optional[Units364] = None value: float -class Name819(Enum): +class Name823(Enum): symmetry = "symmetry" @@ -865,7 +865,7 @@ class SymmetrySchema84(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name820(Enum): +class Name824(Enum): elemental_ratio = "elemental_ratio" @@ -878,7 +878,7 @@ class ElementalRatio85(BaseModel): """ -class Name821(Enum): +class Name825(Enum): p_norm = "p-norm" @@ -891,7 +891,7 @@ class PNorm85(BaseModel): value: float -class Name822(Enum): +class Name826(Enum): inchi = "inchi" @@ -900,7 +900,7 @@ class InChIRepresentationSchema85(BaseModel): value: str -class Name823(Enum): +class Name827(Enum): inchi_key = "inchi_key" @@ -960,14 +960,14 @@ class DatabaseSourceSchema84(BaseModel): """ -class Name824(Enum): +class Name828(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" class MaterialConsistencyCheckSchema84(BaseModel): - name: Name824 + name: Name828 """ Name of the consistency check that is performed, which is listed in an enum. """ diff --git a/src/py/mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/vacancy.py b/src/py/mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/vacancy.py index c393069e0..a38a404b4 100644 --- a/src/py/mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/vacancy.py +++ b/src/py/mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/vacancy.py @@ -285,30 +285,30 @@ class VolumeSchema(BaseModel): value: float -class Name859(Enum): +class Name863(Enum): density = "density" -class Units375(Enum): +class Units380(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units375] = None + units: Optional[Units380] = None value: float -class Units376(Enum): +class Units381(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units376] = None + units: Optional[Units381] = None value: float -class Name860(Enum): +class Name864(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name861(Enum): +class Name865(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name862(Enum): +class Name866(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name863(Enum): +class Name867(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name864(Enum): +class Name868(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name865(Enum): +class Name869(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name865 + name: Name869 """ Name of the consistency check that is performed, which is listed in an enum. """ diff --git a/src/py/mat3ra/esse/models/materials_category/pristine_structures/three_dimensional/ideal_crystal.py b/src/py/mat3ra/esse/models/materials_category/pristine_structures/three_dimensional/ideal_crystal.py index 99a408d14..9a16da2e6 100644 --- a/src/py/mat3ra/esse/models/materials_category/pristine_structures/three_dimensional/ideal_crystal.py +++ b/src/py/mat3ra/esse/models/materials_category/pristine_structures/three_dimensional/ideal_crystal.py @@ -285,30 +285,30 @@ class VolumeSchema(BaseModel): value: float -class Name577(Enum): +class Name579(Enum): density = "density" -class Units263(Enum): +class Units267(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units263] = None + units: Optional[Units267] = None value: float -class Units264(Enum): +class Units268(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units264] = None + units: Optional[Units268] = None value: float -class Name578(Enum): +class Name580(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name579(Enum): +class Name581(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name580(Enum): +class Name582(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name581(Enum): +class Name583(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name582(Enum): +class Name584(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name583(Enum): +class Name585(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name583 + name: Name585 """ Name of the consistency check that is performed, which is listed in an enum. """ diff --git a/src/py/mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/nanoribbon.py b/src/py/mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/nanoribbon.py index d23364820..16a92a4c1 100644 --- a/src/py/mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/nanoribbon.py +++ b/src/py/mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/nanoribbon.py @@ -432,30 +432,30 @@ class VolumeSchema(BaseModel): value: float -class Name664(Enum): +class Name668(Enum): density = "density" -class Units297(Enum): +class Units301(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units297] = None + units: Optional[Units301] = None value: float -class Units298(Enum): +class Units302(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units298] = None + units: Optional[Units302] = None value: float -class Name665(Enum): +class Name669(Enum): symmetry = "symmetry" @@ -475,7 +475,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name666(Enum): +class Name670(Enum): elemental_ratio = "elemental_ratio" @@ -488,7 +488,7 @@ class ElementalRatio(BaseModel): """ -class Name667(Enum): +class Name671(Enum): p_norm = "p-norm" @@ -501,7 +501,7 @@ class PNorm(BaseModel): value: float -class Name668(Enum): +class Name672(Enum): inchi = "inchi" @@ -510,7 +510,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name669(Enum): +class Name673(Enum): inchi_key = "inchi_key" @@ -597,7 +597,7 @@ class FileSourceSchema(BaseModel): """ -class Name670(Enum): +class Name674(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -610,7 +610,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name670 + name: Name674 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -992,44 +992,44 @@ class LatticeSchema68(BaseModel): ) -class Name671(Enum): +class Name675(Enum): volume = "volume" -class Units299(Enum): +class Units303(Enum): angstrom_3 = "angstrom^3" class VolumeSchema68(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units299] = None + units: Optional[Units303] = None value: float -class Name672(Enum): +class Name676(Enum): density = "density" -class Units300(Enum): +class Units304(Enum): g_cm_3 = "g/cm^3" class DensitySchema69(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units300] = None + units: Optional[Units304] = None value: float -class Units301(Enum): +class Units305(Enum): angstrom = "angstrom" class ScalarSchema83(BaseModel): - units: Optional[Units301] = None + units: Optional[Units305] = None value: float -class Name673(Enum): +class Name677(Enum): symmetry = "symmetry" @@ -1049,7 +1049,7 @@ class SymmetrySchema68(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name674(Enum): +class Name678(Enum): elemental_ratio = "elemental_ratio" @@ -1062,7 +1062,7 @@ class ElementalRatio69(BaseModel): """ -class Name675(Enum): +class Name679(Enum): p_norm = "p-norm" @@ -1075,7 +1075,7 @@ class PNorm68(BaseModel): value: float -class Name676(Enum): +class Name680(Enum): inchi = "inchi" @@ -1084,7 +1084,7 @@ class InChIRepresentationSchema69(BaseModel): value: str -class Name677(Enum): +class Name681(Enum): inchi_key = "inchi_key" @@ -1144,14 +1144,14 @@ class DatabaseSourceSchema68(BaseModel): """ -class Name678(Enum): +class Name682(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" class MaterialConsistencyCheckSchema68(BaseModel): - name: Name678 + name: Name682 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -1481,44 +1481,44 @@ class LatticeSchema69(BaseModel): ) -class Name679(Enum): +class Name683(Enum): volume = "volume" -class Units302(Enum): +class Units306(Enum): angstrom_3 = "angstrom^3" class VolumeSchema69(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units302] = None + units: Optional[Units306] = None value: float -class Name680(Enum): +class Name684(Enum): density = "density" -class Units303(Enum): +class Units307(Enum): g_cm_3 = "g/cm^3" class DensitySchema70(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units303] = None + units: Optional[Units307] = None value: float -class Units304(Enum): +class Units308(Enum): angstrom = "angstrom" class ScalarSchema84(BaseModel): - units: Optional[Units304] = None + units: Optional[Units308] = None value: float -class Name681(Enum): +class Name685(Enum): symmetry = "symmetry" @@ -1538,7 +1538,7 @@ class SymmetrySchema69(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name682(Enum): +class Name686(Enum): elemental_ratio = "elemental_ratio" @@ -1551,7 +1551,7 @@ class ElementalRatio70(BaseModel): """ -class Name683(Enum): +class Name687(Enum): p_norm = "p-norm" @@ -1564,7 +1564,7 @@ class PNorm69(BaseModel): value: float -class Name684(Enum): +class Name688(Enum): inchi = "inchi" @@ -1573,7 +1573,7 @@ class InChIRepresentationSchema70(BaseModel): value: str -class Name685(Enum): +class Name689(Enum): inchi_key = "inchi_key" @@ -1633,14 +1633,14 @@ class DatabaseSourceSchema69(BaseModel): """ -class Name686(Enum): +class Name690(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" class MaterialConsistencyCheckSchema69(BaseModel): - name: Name686 + name: Name690 """ Name of the consistency check that is performed, which is listed in an enum. """ diff --git a/src/py/mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/nanotape.py b/src/py/mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/nanotape.py index e918e7f9e..5a9d0b0fb 100644 --- a/src/py/mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/nanotape.py +++ b/src/py/mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/nanotape.py @@ -432,30 +432,30 @@ class VolumeSchema(BaseModel): value: float -class Name688(Enum): +class Name692(Enum): density = "density" -class Units306(Enum): +class Units310(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units306] = None + units: Optional[Units310] = None value: float -class Units307(Enum): +class Units311(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units307] = None + units: Optional[Units311] = None value: float -class Name689(Enum): +class Name693(Enum): symmetry = "symmetry" @@ -475,7 +475,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name690(Enum): +class Name694(Enum): elemental_ratio = "elemental_ratio" @@ -488,7 +488,7 @@ class ElementalRatio(BaseModel): """ -class Name691(Enum): +class Name695(Enum): p_norm = "p-norm" @@ -501,7 +501,7 @@ class PNorm(BaseModel): value: float -class Name692(Enum): +class Name696(Enum): inchi = "inchi" @@ -510,7 +510,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name693(Enum): +class Name697(Enum): inchi_key = "inchi_key" @@ -597,7 +597,7 @@ class FileSourceSchema(BaseModel): """ -class Name694(Enum): +class Name698(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -610,7 +610,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name694 + name: Name698 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -992,44 +992,44 @@ class LatticeSchema71(BaseModel): ) -class Name695(Enum): +class Name699(Enum): volume = "volume" -class Units308(Enum): +class Units312(Enum): angstrom_3 = "angstrom^3" class VolumeSchema71(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units308] = None + units: Optional[Units312] = None value: float -class Name696(Enum): +class Name700(Enum): density = "density" -class Units309(Enum): +class Units313(Enum): g_cm_3 = "g/cm^3" class DensitySchema72(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units309] = None + units: Optional[Units313] = None value: float -class Units310(Enum): +class Units314(Enum): angstrom = "angstrom" class ScalarSchema86(BaseModel): - units: Optional[Units310] = None + units: Optional[Units314] = None value: float -class Name697(Enum): +class Name701(Enum): symmetry = "symmetry" @@ -1049,7 +1049,7 @@ class SymmetrySchema71(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name698(Enum): +class Name702(Enum): elemental_ratio = "elemental_ratio" @@ -1062,7 +1062,7 @@ class ElementalRatio72(BaseModel): """ -class Name699(Enum): +class Name703(Enum): p_norm = "p-norm" @@ -1075,7 +1075,7 @@ class PNorm71(BaseModel): value: float -class Name700(Enum): +class Name704(Enum): inchi = "inchi" @@ -1084,7 +1084,7 @@ class InChIRepresentationSchema72(BaseModel): value: str -class Name701(Enum): +class Name705(Enum): inchi_key = "inchi_key" @@ -1144,14 +1144,14 @@ class DatabaseSourceSchema71(BaseModel): """ -class Name702(Enum): +class Name706(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" class MaterialConsistencyCheckSchema71(BaseModel): - name: Name702 + name: Name706 """ Name of the consistency check that is performed, which is listed in an enum. """ diff --git a/src/py/mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab.py b/src/py/mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab.py index 2e84dbfa1..cbc781f83 100644 --- a/src/py/mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab.py +++ b/src/py/mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab.py @@ -419,30 +419,30 @@ class VolumeSchema(BaseModel): value: float -class Name736(Enum): +class Name740(Enum): density = "density" -class Units327(Enum): +class Units332(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units327] = None + units: Optional[Units332] = None value: float -class Units328(Enum): +class Units333(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units328] = None + units: Optional[Units333] = None value: float -class Name737(Enum): +class Name741(Enum): symmetry = "symmetry" @@ -462,7 +462,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name738(Enum): +class Name742(Enum): elemental_ratio = "elemental_ratio" @@ -475,7 +475,7 @@ class ElementalRatio(BaseModel): """ -class Name739(Enum): +class Name743(Enum): p_norm = "p-norm" @@ -488,7 +488,7 @@ class PNorm(BaseModel): value: float -class Name740(Enum): +class Name744(Enum): inchi = "inchi" @@ -497,7 +497,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name741(Enum): +class Name745(Enum): inchi_key = "inchi_key" @@ -584,7 +584,7 @@ class FileSourceSchema(BaseModel): """ -class Name742(Enum): +class Name746(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -597,7 +597,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name742 + name: Name746 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -971,44 +971,44 @@ class LatticeSchema75(BaseModel): ) -class Name743(Enum): +class Name747(Enum): volume = "volume" -class Units329(Enum): +class Units334(Enum): angstrom_3 = "angstrom^3" class VolumeSchema75(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units329] = None + units: Optional[Units334] = None value: float -class Name744(Enum): +class Name748(Enum): density = "density" -class Units330(Enum): +class Units335(Enum): g_cm_3 = "g/cm^3" class DensitySchema76(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units330] = None + units: Optional[Units335] = None value: float -class Units331(Enum): +class Units336(Enum): angstrom = "angstrom" class ScalarSchema91(BaseModel): - units: Optional[Units331] = None + units: Optional[Units336] = None value: float -class Name745(Enum): +class Name749(Enum): symmetry = "symmetry" @@ -1028,7 +1028,7 @@ class SymmetrySchema75(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name746(Enum): +class Name750(Enum): elemental_ratio = "elemental_ratio" @@ -1041,7 +1041,7 @@ class ElementalRatio76(BaseModel): """ -class Name747(Enum): +class Name751(Enum): p_norm = "p-norm" @@ -1054,7 +1054,7 @@ class PNorm76(BaseModel): value: float -class Name748(Enum): +class Name752(Enum): inchi = "inchi" @@ -1063,7 +1063,7 @@ class InChIRepresentationSchema76(BaseModel): value: str -class Name749(Enum): +class Name753(Enum): inchi_key = "inchi_key" @@ -1123,14 +1123,14 @@ class DatabaseSourceSchema75(BaseModel): """ -class Name750(Enum): +class Name754(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" class MaterialConsistencyCheckSchema75(BaseModel): - name: Name750 + name: Name754 """ Name of the consistency check that is performed, which is listed in an enum. """ diff --git a/src/py/mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab_strained_supercell.py b/src/py/mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab_strained_supercell.py index 50026d970..ab1d19aa2 100644 --- a/src/py/mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab_strained_supercell.py +++ b/src/py/mat3ra/esse/models/materials_category/pristine_structures/two_dimensional/slab_strained_supercell.py @@ -427,30 +427,30 @@ class VolumeSchema(BaseModel): value: float -class Name776(Enum): +class Name780(Enum): density = "density" -class Units342(Enum): +class Units347(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units342] = None + units: Optional[Units347] = None value: float -class Units343(Enum): +class Units348(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units343] = None + units: Optional[Units348] = None value: float -class Name777(Enum): +class Name781(Enum): symmetry = "symmetry" @@ -470,7 +470,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name778(Enum): +class Name782(Enum): elemental_ratio = "elemental_ratio" @@ -483,7 +483,7 @@ class ElementalRatio(BaseModel): """ -class Name779(Enum): +class Name783(Enum): p_norm = "p-norm" @@ -496,7 +496,7 @@ class PNorm(BaseModel): value: float -class Name780(Enum): +class Name784(Enum): inchi = "inchi" @@ -505,7 +505,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name781(Enum): +class Name785(Enum): inchi_key = "inchi_key" @@ -592,7 +592,7 @@ class FileSourceSchema(BaseModel): """ -class Name782(Enum): +class Name786(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -605,7 +605,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name782 + name: Name786 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -979,44 +979,44 @@ class LatticeSchema80(BaseModel): ) -class Name783(Enum): +class Name787(Enum): volume = "volume" -class Units344(Enum): +class Units349(Enum): angstrom_3 = "angstrom^3" class VolumeSchema80(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units344] = None + units: Optional[Units349] = None value: float -class Name784(Enum): +class Name788(Enum): density = "density" -class Units345(Enum): +class Units350(Enum): g_cm_3 = "g/cm^3" class DensitySchema81(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units345] = None + units: Optional[Units350] = None value: float -class Units346(Enum): +class Units351(Enum): angstrom = "angstrom" class ScalarSchema96(BaseModel): - units: Optional[Units346] = None + units: Optional[Units351] = None value: float -class Name785(Enum): +class Name789(Enum): symmetry = "symmetry" @@ -1036,7 +1036,7 @@ class SymmetrySchema80(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name786(Enum): +class Name790(Enum): elemental_ratio = "elemental_ratio" @@ -1049,7 +1049,7 @@ class ElementalRatio81(BaseModel): """ -class Name787(Enum): +class Name791(Enum): p_norm = "p-norm" @@ -1062,7 +1062,7 @@ class PNorm81(BaseModel): value: float -class Name788(Enum): +class Name792(Enum): inchi = "inchi" @@ -1071,7 +1071,7 @@ class InChIRepresentationSchema81(BaseModel): value: str -class Name789(Enum): +class Name793(Enum): inchi_key = "inchi_key" @@ -1131,14 +1131,14 @@ class DatabaseSourceSchema80(BaseModel): """ -class Name790(Enum): +class Name794(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" class MaterialConsistencyCheckSchema80(BaseModel): - name: Name790 + name: Name794 """ Name of the consistency check that is performed, which is listed in an enum. """ diff --git a/src/py/mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/point_defect_site.py b/src/py/mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/point_defect_site.py index a71246b69..c473b1803 100644 --- a/src/py/mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/point_defect_site.py +++ b/src/py/mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/point_defect_site.py @@ -285,30 +285,30 @@ class VolumeSchema(BaseModel): value: float -class Name717(Enum): +class Name721(Enum): density = "density" -class Units319(Enum): +class Units323(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units319] = None + units: Optional[Units323] = None value: float -class Units320(Enum): +class Units324(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units320] = None + units: Optional[Units324] = None value: float -class Name718(Enum): +class Name722(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name719(Enum): +class Name723(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name720(Enum): +class Name724(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name721(Enum): +class Name725(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name722(Enum): +class Name726(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name723(Enum): +class Name727(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name723 + name: Name727 """ Name of the consistency check that is performed, which is listed in an enum. """ diff --git a/src/py/mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/void_region.py b/src/py/mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/void_region.py index 8f21b9bc3..30d1865fc 100644 --- a/src/py/mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/void_region.py +++ b/src/py/mat3ra/esse/models/materials_category_components/entities/auxiliary/zero_dimensional/void_region.py @@ -285,30 +285,30 @@ class VolumeSchema(BaseModel): value: float -class Name878(Enum): +class Name882(Enum): density = "density" -class Units385(Enum): +class Units390(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units385] = None + units: Optional[Units390] = None value: float -class Units386(Enum): +class Units391(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units386] = None + units: Optional[Units391] = None value: float -class Name879(Enum): +class Name883(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name880(Enum): +class Name884(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name881(Enum): +class Name885(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name882(Enum): +class Name886(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name883(Enum): +class Name887(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name884(Enum): +class Name888(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name884 + name: Name888 """ Name of the consistency check that is performed, which is listed in an enum. """ diff --git a/src/py/mat3ra/esse/models/materials_category_components/entities/core/two_dimensional/vacuum.py b/src/py/mat3ra/esse/models/materials_category_components/entities/core/two_dimensional/vacuum.py index 3ff357d91..59fadf73e 100644 --- a/src/py/mat3ra/esse/models/materials_category_components/entities/core/two_dimensional/vacuum.py +++ b/src/py/mat3ra/esse/models/materials_category_components/entities/core/two_dimensional/vacuum.py @@ -291,30 +291,30 @@ class VolumeSchema(BaseModel): value: float -class Name867(Enum): +class Name871(Enum): density = "density" -class Units378(Enum): +class Units383(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units378] = None + units: Optional[Units383] = None value: float -class Units379(Enum): +class Units384(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units379] = None + units: Optional[Units384] = None value: float -class Name868(Enum): +class Name872(Enum): symmetry = "symmetry" @@ -334,7 +334,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name869(Enum): +class Name873(Enum): elemental_ratio = "elemental_ratio" @@ -347,7 +347,7 @@ class ElementalRatio(BaseModel): """ -class Name870(Enum): +class Name874(Enum): p_norm = "p-norm" @@ -360,7 +360,7 @@ class PNorm(BaseModel): value: float -class Name871(Enum): +class Name875(Enum): inchi = "inchi" @@ -369,7 +369,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name872(Enum): +class Name876(Enum): inchi_key = "inchi_key" @@ -456,7 +456,7 @@ class FileSourceSchema(BaseModel): """ -class Name873(Enum): +class Name877(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -469,7 +469,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name873 + name: Name877 """ Name of the consistency check that is performed, which is listed in an enum. """ diff --git a/src/py/mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/strained_non_uniform.py b/src/py/mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/strained_non_uniform.py index 2333c91a3..ac3547ae4 100644 --- a/src/py/mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/strained_non_uniform.py +++ b/src/py/mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/strained_non_uniform.py @@ -285,30 +285,30 @@ class VolumeSchema(BaseModel): value: float -class Name793(Enum): +class Name797(Enum): density = "density" -class Units348(Enum): +class Units353(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units348] = None + units: Optional[Units353] = None value: float -class Units349(Enum): +class Units354(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units349] = None + units: Optional[Units354] = None value: float -class Name794(Enum): +class Name798(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name795(Enum): +class Name799(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name796(Enum): +class Name800(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name797(Enum): +class Name801(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name798(Enum): +class Name802(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name799(Enum): +class Name803(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name799 + name: Name803 """ Name of the consistency check that is performed, which is listed in an enum. """ diff --git a/src/py/mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/strained_uniform.py b/src/py/mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/strained_uniform.py index ae6c93c35..ecd27974e 100644 --- a/src/py/mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/strained_uniform.py +++ b/src/py/mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/strained_uniform.py @@ -285,30 +285,30 @@ class VolumeSchema(BaseModel): value: float -class Name801(Enum): +class Name805(Enum): density = "density" -class Units351(Enum): +class Units356(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units351] = None + units: Optional[Units356] = None value: float -class Units352(Enum): +class Units357(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units352] = None + units: Optional[Units357] = None value: float -class Name802(Enum): +class Name806(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name803(Enum): +class Name807(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name804(Enum): +class Name808(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name805(Enum): +class Name809(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name806(Enum): +class Name810(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name807(Enum): +class Name811(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name807 + name: Name811 """ Name of the consistency check that is performed, which is listed in an enum. """ diff --git a/src/py/mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/supercell.py b/src/py/mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/supercell.py index c11d3b8dc..f901b882e 100644 --- a/src/py/mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/supercell.py +++ b/src/py/mat3ra/esse/models/materials_category_components/entities/reusable/three_dimensional/supercell.py @@ -285,30 +285,30 @@ class VolumeSchema(BaseModel): value: float -class Name828(Enum): +class Name832(Enum): density = "density" -class Units361(Enum): +class Units366(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units361] = None + units: Optional[Units366] = None value: float -class Units362(Enum): +class Units367(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units362] = None + units: Optional[Units367] = None value: float -class Name829(Enum): +class Name833(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name830(Enum): +class Name834(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name831(Enum): +class Name835(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name832(Enum): +class Name836(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name833(Enum): +class Name837(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name834(Enum): +class Name838(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name834 + name: Name838 """ Name of the consistency check that is performed, which is listed in an enum. """ diff --git a/src/py/mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/slab_stack_configuration.py b/src/py/mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/slab_stack_configuration.py index eb283fc48..48f93f20d 100644 --- a/src/py/mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/slab_stack_configuration.py +++ b/src/py/mat3ra/esse/models/materials_category_components/entities/reusable/two_dimensional/slab_stack_configuration.py @@ -419,30 +419,30 @@ class VolumeSchema(BaseModel): value: float -class Name752(Enum): +class Name756(Enum): density = "density" -class Units333(Enum): +class Units338(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units333] = None + units: Optional[Units338] = None value: float -class Units334(Enum): +class Units339(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units334] = None + units: Optional[Units339] = None value: float -class Name753(Enum): +class Name757(Enum): symmetry = "symmetry" @@ -462,7 +462,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name754(Enum): +class Name758(Enum): elemental_ratio = "elemental_ratio" @@ -475,7 +475,7 @@ class ElementalRatio(BaseModel): """ -class Name755(Enum): +class Name759(Enum): p_norm = "p-norm" @@ -488,7 +488,7 @@ class PNorm(BaseModel): value: float -class Name756(Enum): +class Name760(Enum): inchi = "inchi" @@ -497,7 +497,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name757(Enum): +class Name761(Enum): inchi_key = "inchi_key" @@ -584,7 +584,7 @@ class FileSourceSchema(BaseModel): """ -class Name758(Enum): +class Name762(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -597,7 +597,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name758 + name: Name762 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -971,44 +971,44 @@ class LatticeSchema77(BaseModel): ) -class Name759(Enum): +class Name763(Enum): volume = "volume" -class Units335(Enum): +class Units340(Enum): angstrom_3 = "angstrom^3" class VolumeSchema77(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units335] = None + units: Optional[Units340] = None value: float -class Name760(Enum): +class Name764(Enum): density = "density" -class Units336(Enum): +class Units341(Enum): g_cm_3 = "g/cm^3" class DensitySchema78(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units336] = None + units: Optional[Units341] = None value: float -class Units337(Enum): +class Units342(Enum): angstrom = "angstrom" class ScalarSchema93(BaseModel): - units: Optional[Units337] = None + units: Optional[Units342] = None value: float -class Name761(Enum): +class Name765(Enum): symmetry = "symmetry" @@ -1028,7 +1028,7 @@ class SymmetrySchema77(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name762(Enum): +class Name766(Enum): elemental_ratio = "elemental_ratio" @@ -1041,7 +1041,7 @@ class ElementalRatio78(BaseModel): """ -class Name763(Enum): +class Name767(Enum): p_norm = "p-norm" @@ -1054,7 +1054,7 @@ class PNorm78(BaseModel): value: float -class Name764(Enum): +class Name768(Enum): inchi = "inchi" @@ -1063,7 +1063,7 @@ class InChIRepresentationSchema78(BaseModel): value: str -class Name765(Enum): +class Name769(Enum): inchi_key = "inchi_key" @@ -1123,14 +1123,14 @@ class DatabaseSourceSchema77(BaseModel): """ -class Name766(Enum): +class Name770(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" class MaterialConsistencyCheckSchema77(BaseModel): - name: Name766 + name: Name770 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -1460,44 +1460,44 @@ class LatticeSchema78(BaseModel): ) -class Name767(Enum): +class Name771(Enum): volume = "volume" -class Units338(Enum): +class Units343(Enum): angstrom_3 = "angstrom^3" class VolumeSchema78(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units338] = None + units: Optional[Units343] = None value: float -class Name768(Enum): +class Name772(Enum): density = "density" -class Units339(Enum): +class Units344(Enum): g_cm_3 = "g/cm^3" class DensitySchema79(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units339] = None + units: Optional[Units344] = None value: float -class Units340(Enum): +class Units345(Enum): angstrom = "angstrom" class ScalarSchema94(BaseModel): - units: Optional[Units340] = None + units: Optional[Units345] = None value: float -class Name769(Enum): +class Name773(Enum): symmetry = "symmetry" @@ -1517,7 +1517,7 @@ class SymmetrySchema78(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name770(Enum): +class Name774(Enum): elemental_ratio = "elemental_ratio" @@ -1530,7 +1530,7 @@ class ElementalRatio79(BaseModel): """ -class Name771(Enum): +class Name775(Enum): p_norm = "p-norm" @@ -1543,7 +1543,7 @@ class PNorm79(BaseModel): value: float -class Name772(Enum): +class Name776(Enum): inchi = "inchi" @@ -1552,7 +1552,7 @@ class InChIRepresentationSchema79(BaseModel): value: str -class Name773(Enum): +class Name777(Enum): inchi_key = "inchi_key" @@ -1612,14 +1612,14 @@ class DatabaseSourceSchema78(BaseModel): """ -class Name774(Enum): +class Name778(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" class MaterialConsistencyCheckSchema78(BaseModel): - name: Name774 + name: Name778 """ Name of the consistency check that is performed, which is listed in an enum. """ diff --git a/src/py/mat3ra/esse/models/materials_category_components/operations/core/modifications/perturb.py b/src/py/mat3ra/esse/models/materials_category_components/operations/core/modifications/perturb.py index e11769117..6d3088553 100644 --- a/src/py/mat3ra/esse/models/materials_category_components/operations/core/modifications/perturb.py +++ b/src/py/mat3ra/esse/models/materials_category_components/operations/core/modifications/perturb.py @@ -285,30 +285,30 @@ class VolumeSchema(BaseModel): value: float -class Name707(Enum): +class Name711(Enum): density = "density" -class Units312(Enum): +class Units316(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units312] = None + units: Optional[Units316] = None value: float -class Units313(Enum): +class Units317(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units313] = None + units: Optional[Units317] = None value: float -class Name708(Enum): +class Name712(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name709(Enum): +class Name713(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name710(Enum): +class Name714(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name711(Enum): +class Name715(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name712(Enum): +class Name716(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name713(Enum): +class Name717(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name713 + name: Name717 """ Name of the consistency check that is performed, which is listed in an enum. """ diff --git a/src/py/mat3ra/esse/models/measurement.py b/src/py/mat3ra/esse/models/measurement.py new file mode 100644 index 000000000..a890a9054 --- /dev/null +++ b/src/py/mat3ra/esse/models/measurement.py @@ -0,0 +1,2445 @@ +# generated by datamodel-codegen: +# filename: measurement.json +# version: 0.28.5 + +from __future__ import annotations + +from enum import Enum +from typing import Any, Dict, List, Literal, Optional, Union + +from pydantic import BaseModel, ConfigDict, Field, RootModel, confloat, conint + + +class EntityReferenceSchema(BaseModel): + id: str = Field(..., alias="_id") + """ + entity identity + """ + cls: Optional[str] = None + """ + entity class + """ + slug: Optional[str] = None + """ + entity slug + """ + + +class Queue(Enum): + D = "D" + OR = "OR" + OF = "OF" + OFplus = "OFplus" + SR = "SR" + SF = "SF" + SFplus = "SFplus" + OR4 = "OR4" + OR8 = "OR8" + OR16 = "OR16" + SR4 = "SR4" + SR8 = "SR8" + SR16 = "SR16" + GOF = "GOF" + G4OF = "G4OF" + G8OF = "G8OF" + GSF = "GSF" + G4SF = "G4SF" + G8SF = "G8SF" + + +class TimeLimitType(Enum): + per_single_attempt = "per single attempt" + compound = "compound" + + +class QuantumEspressoArgumentsSchema(BaseModel): + model_config = ConfigDict( + extra="forbid", + ) + nimage: Optional[conint(ge=1, le=100)] = 1 + """ + Processors can be divided into different `images`, each corresponding to a different self-consistent or linear-response calculation, loosely coupled to others. + """ + npools: Optional[conint(ge=1, le=100)] = 1 + """ + Each image can be subpartitioned into `pools`, each taking care of a group of k-points. + """ + nband: Optional[conint(ge=1, le=100)] = 1 + """ + Each pool is subpartitioned into `band groups`, each taking care of a group of Kohn-Sham orbitals (also called bands, or wavefunctions). + """ + ntg: Optional[conint(ge=1, le=100)] = 1 + """ + In order to allow good parallelization of the 3D FFT when the number of processors exceeds the number of FFT planes, FFTs on Kohn-Sham states are redistributed to `task` groups so that each group can process several wavefunctions at the same time. + """ + ndiag: Optional[conint(ge=1, le=100)] = 1 + """ + A further level of parallelization, independent on PW or k-point parallelization, is the parallelization of subspace diagonalization / iterative orthonormalization. Both operations required the diagonalization of arrays whose dimension is the number of Kohn-Sham states (or a small multiple of it). All such arrays are distributed block-like across the `linear-algebra group`, a subgroup of the pool of processors, organized in a square 2D grid. As a consequence the number of processors in the linear-algebra group is given by n2, where n is an integer; n2 must be smaller than the number of processors in the PW group. The diagonalization is then performed in parallel using standard linear algebra operations. + """ + + +class Cluster(BaseModel): + fqdn: Optional[str] = None + """ + FQDN of the cluster. e.g. master-1-staging.exabyte.io + """ + jid: Optional[str] = None + """ + Job's identity in RMS. e.g. 1234.master-1-staging.exabyte.io + """ + + +class Domain(Enum): + rupy = "rupy" + alfred = "alfred" + celim = "celim" + webapp = "webapp" + + +class Error(BaseModel): + domain: Optional[Domain] = None + """ + Domain of the error appearance (internal). + """ + reason: Optional[str] = None + """ + Should be a short, unique, machine-readable error code string. e.g. FileNotFound + """ + message: Optional[str] = None + """ + Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json' + """ + traceback: Optional[str] = None + """ + Full machine-readable error traceback. e.g. FileNotFound + """ + + +class ComputeArgumentsSchema(BaseModel): + queue: Queue + """ + Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication. + """ + nodes: int + """ + number of nodes used for the job inside the RMS. + """ + ppn: int + """ + number of CPUs used for the job inside the RMS. + """ + timeLimit: str + """ + Wallclock time limit for computing a job. Clock format: 'hh:mm:ss' + """ + timeLimitType: Optional[TimeLimitType] = "per single attempt" + """ + Convention to use when reasoning about time limits + """ + isRestartable: Optional[bool] = True + """ + Job is allowed to restart on termination. + """ + notify: Optional[str] = None + """ + Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined. + """ + email: Optional[str] = None + """ + Email address to notify about job execution. + """ + maxCPU: Optional[int] = None + """ + Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user. + """ + arguments: Optional[QuantumEspressoArgumentsSchema] = Field({}, title="quantum espresso arguments schema") + """ + Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere + """ + cluster: Optional[Cluster] = None + """ + Cluster where the job is executed. Optional on create. Required on job submission. + """ + errors: Optional[List[Error]] = None + """ + Computation error. Optional. Appears only if something happens on jobs execution. + """ + excludeFilesPattern: Optional[str] = None + """ + A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix + """ + + +class Error11(BaseModel): + domain: Optional[Domain] = None + """ + Domain of the error appearance (internal). + """ + reason: Optional[str] = None + """ + Should be a short, unique, machine-readable error code string. e.g. FileNotFound + """ + message: Optional[str] = None + """ + Human-readable error message. e.g. 'File Not Found: /home/demo/data/project1/job-123/job-config.json' + """ + traceback: Optional[str] = None + """ + Full machine-readable error traceback. e.g. FileNotFound + """ + + +class ComputeArgumentsSchema11(BaseModel): + queue: Queue + """ + Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication. + """ + nodes: int + """ + number of nodes used for the job inside the RMS. + """ + ppn: int + """ + number of CPUs used for the job inside the RMS. + """ + timeLimit: str + """ + Wallclock time limit for computing a job. Clock format: 'hh:mm:ss' + """ + timeLimitType: Optional[TimeLimitType] = "per single attempt" + """ + Convention to use when reasoning about time limits + """ + isRestartable: Optional[bool] = True + """ + Job is allowed to restart on termination. + """ + notify: Optional[str] = None + """ + Email notification for the job: n - never, a - job aborted, b - job begins, e - job ends. Last three could be combined. + """ + email: Optional[str] = None + """ + Email address to notify about job execution. + """ + maxCPU: Optional[int] = None + """ + Maximum CPU count per node. This parameter is used to let backend job submission infrastructure know that this job is to be charged for the maximum CPU per node instead of the actual ppn. For premium/fast queues where resources are provisioned on-demand and exclusively per user. + """ + arguments: Optional[QuantumEspressoArgumentsSchema] = Field({}, title="quantum espresso arguments schema") + """ + Optional arguments specific to using application - VASP, Quantum Espresso, etc. Specified elsewhere + """ + cluster: Optional[Cluster] = None + """ + Cluster where the job is executed. Optional on create. Required on job submission. + """ + errors: Optional[List[Error11]] = None + """ + Computation error. Optional. Appears only if something happens on jobs execution. + """ + excludeFilesPattern: Optional[str] = None + """ + A Python compatible regex to exclude files from upload. e.g. ^.*.txt& excludes all files with .txt suffix + """ + + +class RuntimeItemNameObjectSchema(BaseModel): + model_config = ConfigDict( + extra="allow", + ) + name: str + """ + The name of this item. e.g. scf_accuracy + """ + + +class StatusTrackItem(BaseModel): + trackedAt: float + status: str + repetition: Optional[float] = None + + +class Status(Enum): + idle = "idle" + active = "active" + warning = "warning" + error = "error" + finished = "finished" + + +class Subtype(Enum): + input = "input" + output = "output" + dataFrame = "dataFrame" + + +class Source(Enum): + api = "api" + object_storage = "object_storage" + + +class DataIORestAPIInputSchema(BaseModel): + type: Literal["0#-datamodel-code-generator-#-object-#-special-#"] + endpoint: str + """ + rest API endpoint + """ + endpoint_options: Dict[str, Any] + """ + rest API endpoint options + """ + name: Optional[str] = None + """ + the name of the variable in local scope to save the data under + """ + + +class ObjectStorageContainerData(BaseModel): + CONTAINER: Optional[str] = None + """ + Object storage container for the file + """ + NAME: Optional[str] = None + """ + Name of the file inside the object storage bucket + """ + PROVIDER: Optional[str] = None + """ + Object storage provider + """ + REGION: Optional[str] = None + """ + Region for the object container specified in Container + """ + SIZE: Optional[int] = None + """ + Size of the file in bytes + """ + TIMESTAMP: Optional[str] = None + """ + Unix timestamp showing when the file was last modified + """ + + +class ObjectStorageIoSchema(BaseModel): + type: Literal["1#-datamodel-code-generator-#-object-#-special-#"] + objectData: ObjectStorageContainerData = Field(..., title="Object Storage Container Data") + overwrite: Optional[bool] = None + """ + if a file with the same filename already exists, whether to overwrite the old file + """ + pathname: Optional[str] = None + """ + Relative path to the directory that contains the file. + """ + basename: Optional[str] = None + """ + Basename of the file + """ + filetype: Optional[str] = None + """ + What kind of file this is, e.g. image / text + """ + + +class Input(RootModel[Union[DataIORestAPIInputSchema, ObjectStorageIoSchema]]): + root: Union[DataIORestAPIInputSchema, ObjectStorageIoSchema] = Field(..., discriminator="type") + + +class DataIOUnitSchema(BaseModel): + id: Optional[str] = Field(None, alias="_id") + """ + entity identity + """ + slug: Optional[str] = None + """ + entity slug + """ + systemName: Optional[str] = None + schemaVersion: Optional[str] = "2022.8.16" + """ + entity's schema version. Used to distinct between different schemas. + """ + name: str + """ + entity name + """ + isDefault: Optional[bool] = False + """ + Identifies that entity is defaultable + """ + preProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the pre-processors for this calculation + """ + postProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the post-processors for this calculation + """ + monitors: List[RuntimeItemNameObjectSchema] + """ + names of the monitors for this calculation + """ + results: List[RuntimeItemNameObjectSchema] + """ + names of the results for this calculation + """ + tags: Optional[List[str]] = None + """ + entity tags + """ + statusTrack: Optional[List[StatusTrackItem]] = None + isDraft: Optional[bool] = None + head: Optional[bool] = None + """ + Whether this unit is the first one to be executed. + """ + flowchartId: str + """ + Identity of the unit in the workflow. Used to trace the execution flow of the workflow. + """ + next: Optional[str] = None + """ + Next unit's flowchartId. If empty, the current unit is the last. + """ + enableRender: Optional[bool] = None + """ + Whether Rupy should attempt to use Jinja templating to add context variables into the unit + """ + status: Optional[Status] = None + """ + Status of the unit. + """ + type: Literal["0#-datamodel-code-generator-#-object-#-special-#"] + subtype: Subtype + source: Source + input: List[Input] + + +class WorkflowUnitInputSchema(BaseModel): + scope: str + """ + Scope of the variable. e.g. 'global' or 'flowchart_id_2' + """ + name: str + """ + Name of the input data. e.g. total_energy + """ + + +class ConditionUnitSchema(BaseModel): + id: Optional[str] = Field(None, alias="_id") + """ + entity identity + """ + slug: Optional[str] = None + """ + entity slug + """ + systemName: Optional[str] = None + schemaVersion: Optional[str] = "2022.8.16" + """ + entity's schema version. Used to distinct between different schemas. + """ + name: str + """ + entity name + """ + isDefault: Optional[bool] = False + """ + Identifies that entity is defaultable + """ + preProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the pre-processors for this calculation + """ + postProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the post-processors for this calculation + """ + monitors: List[RuntimeItemNameObjectSchema] + """ + names of the monitors for this calculation + """ + results: List[RuntimeItemNameObjectSchema] + """ + names of the results for this calculation + """ + tags: Optional[List[str]] = None + """ + entity tags + """ + statusTrack: Optional[List[StatusTrackItem]] = None + isDraft: Optional[bool] = None + head: Optional[bool] = None + """ + Whether this unit is the first one to be executed. + """ + flowchartId: str + """ + Identity of the unit in the workflow. Used to trace the execution flow of the workflow. + """ + next: Optional[str] = None + """ + Next unit's flowchartId. If empty, the current unit is the last. + """ + enableRender: Optional[bool] = None + """ + Whether Rupy should attempt to use Jinja templating to add context variables into the unit + """ + status: Optional[Status] = None + """ + Status of the unit. + """ + type: Literal["1#-datamodel-code-generator-#-object-#-special-#"] + input: List[WorkflowUnitInputSchema] + """ + Input information for condition. + """ + statement: str + """ + Condition statement. e.g. 'abs(x-total_energy) < 1e-5' + """ + then: str + """ + Flowchart ID reference for `then` part of the condition. + """ + else_: str = Field(..., alias="else") + """ + Flowchart ID reference for `else` part of the condition. + """ + maxOccurrences: int + """ + Maximum occurrence of the condition, usable for loops. + """ + throwException: Optional[bool] = None + """ + Throw exception on reaching to maximum occurence. + """ + + +class AssertionUnitSchema(BaseModel): + id: Optional[str] = Field(None, alias="_id") + """ + entity identity + """ + slug: Optional[str] = None + """ + entity slug + """ + systemName: Optional[str] = None + schemaVersion: Optional[str] = "2022.8.16" + """ + entity's schema version. Used to distinct between different schemas. + """ + name: str + """ + entity name + """ + isDefault: Optional[bool] = False + """ + Identifies that entity is defaultable + """ + preProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the pre-processors for this calculation + """ + postProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the post-processors for this calculation + """ + monitors: List[RuntimeItemNameObjectSchema] + """ + names of the monitors for this calculation + """ + results: List[RuntimeItemNameObjectSchema] + """ + names of the results for this calculation + """ + tags: Optional[List[str]] = None + """ + entity tags + """ + statusTrack: Optional[List[StatusTrackItem]] = None + isDraft: Optional[bool] = None + head: Optional[bool] = None + """ + Whether this unit is the first one to be executed. + """ + flowchartId: str + """ + Identity of the unit in the workflow. Used to trace the execution flow of the workflow. + """ + next: Optional[str] = None + """ + Next unit's flowchartId. If empty, the current unit is the last. + """ + enableRender: Optional[bool] = None + """ + Whether Rupy should attempt to use Jinja templating to add context variables into the unit + """ + status: Optional[Status] = None + """ + Status of the unit. + """ + type: Literal["2#-datamodel-code-generator-#-object-#-special-#"] + statement: str + """ + The statement to be evaluated + """ + errorMessage: Optional[str] = None + """ + The error message to be displayed if the assertion fails + """ + + +class RunConfig(BaseModel): + commandTemplate: str + """ + The command template of the application + """ + outFileName: str + """ + The output file name of the application + """ + + +class ApplicationSchema(BaseModel): + id: Optional[str] = Field(None, alias="_id") + """ + entity identity + """ + slug: Optional[str] = None + """ + entity slug + """ + systemName: Optional[str] = None + schemaVersion: Optional[str] = "2022.8.16" + """ + entity's schema version. Used to distinct between different schemas. + """ + name: str + """ + entity name + """ + isDefault: Optional[bool] = False + """ + Identifies that entity is defaultable + """ + shortName: str + """ + The short name of the application. e.g. qe + """ + summary: str + """ + Application's short description. + """ + version: str + """ + Application version. e.g. 5.3.5 + """ + build: str + """ + Application build. e.g. VTST + """ + isDefaultVersion: Optional[bool] = None + """ + Whether the version is the default version + """ + hasAdvancedComputeOptions: Optional[bool] = None + """ + Whether advanced compute options are present + """ + isLicensed: Optional[bool] = None + """ + Whether licensing is present + """ + isUsingMaterial: Optional[bool] = None + """ + Whether the application is using (being passed during a downstream processing routine) a material structure. + """ + runConfig: Optional[RunConfig] = None + """ + The run configuration of the application + """ + + +class NamedDefaultableInMemoryEntitySchema(BaseModel): + id: Optional[str] = Field(None, alias="_id") + """ + entity identity + """ + slug: Optional[str] = None + """ + entity slug + """ + systemName: Optional[str] = None + schemaVersion: Optional[str] = "2022.8.16" + """ + entity's schema version. Used to distinct between different schemas. + """ + name: str + """ + entity name + """ + isDefault: Optional[bool] = False + """ + Identifies that entity is defaultable + """ + applicationName: str + """ + name of the application this executable belongs to + """ + applicationVersion: str + """ + version of the application this executable belongs to + """ + hasAdvancedComputeOptions: Optional[bool] = None + """ + Whether advanced compute options are present + """ + + +class ExecutionUnitInputIdItemSchemaForPhysicsBasedSimulationEngines(BaseModel): + templateId: Optional[str] = None + templateName: Optional[str] = None + name: str + """ + name of the resulting input file, if different than template name + """ + + +class FlavorSchema(BaseModel): + id: Optional[str] = Field(None, alias="_id") + """ + entity identity + """ + slug: Optional[str] = None + """ + entity slug + """ + systemName: Optional[str] = None + schemaVersion: Optional[str] = "2022.8.16" + """ + entity's schema version. Used to distinct between different schemas. + """ + name: str + """ + entity name + """ + isDefault: Optional[bool] = False + """ + Identifies that entity is defaultable + """ + preProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the pre-processors for this calculation + """ + postProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the post-processors for this calculation + """ + monitors: List[RuntimeItemNameObjectSchema] + """ + names of the monitors for this calculation + """ + results: List[RuntimeItemNameObjectSchema] + """ + names of the results for this calculation + """ + executableName: str + """ + name of the executable this flavor belongs to + """ + applicationName: str + """ + name of the application this flavor belongs to + """ + applicationVersion: str + """ + version of the application this flavor belongs to + """ + input: List[ExecutionUnitInputIdItemSchemaForPhysicsBasedSimulationEngines] = Field( + ..., title="execution unit input schema" + ) + + +class ContextProvider(BaseModel): + name: str + + +class TemplateSchema(BaseModel): + id: Optional[str] = Field(None, alias="_id") + """ + entity identity + """ + slug: Optional[str] = None + """ + entity slug + """ + systemName: Optional[str] = None + schemaVersion: Optional[str] = "2022.8.16" + """ + entity's schema version. Used to distinct between different schemas. + """ + name: str + """ + entity name + """ + executableName: str + applicationName: str + applicationVersion: str + contextProviders: List[ContextProvider] + content: str + """ + Content of the template. e.g. &CONTROL calculation='scf' ... + """ + + +class ExecutionUnitInputItemSchema(BaseModel): + template: TemplateSchema = Field(..., title="template schema") + rendered: Optional[str] = None + """ + Rendered content of the input file. e.g. &CONTROL calculation='scf' ... + """ + isManuallyChanged: Optional[bool] = False + + +class NWChemTotalEnergyContextProviderSchema(BaseModel): + contextProviderName: Literal["0#-datamodel-code-generator-#-object-#-special-#"] + """ + Descriminator for AJV validator + """ + CHARGE: int + """ + Total charge of the system. + """ + MULT: int + """ + Spin multiplicity of the system. + """ + BASIS: str + """ + Basis set label used in the calculation (e.g., '6-31G'). + """ + NAT: int + """ + Number of atoms in the system. + """ + NTYP: int + """ + Number of unique atomic species in the system. + """ + ATOMIC_POSITIONS: str + """ + Formatted text block with atomic positions including constraints. + """ + ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS: str + """ + Formatted text block with atomic positions without constraints. + """ + ATOMIC_SPECIES: str + """ + Formatted text block for atomic species, including element symbols and masses. + """ + FUNCTIONAL: str + """ + Exchange-correlation functional identifier (e.g., 'B3LYP'). + """ + CARTESIAN: bool + """ + Whether atomic positions are expressed in cartesian coordinates. + """ + RESTART: Optional[bool] = None + """ + Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart. + """ + + +class RESTARTMODE(Enum): + from_scratch = "from_scratch" + restart = "restart" + + +class ATOMICSPECY(BaseModel): + model_config = ConfigDict( + extra="forbid", + ) + X: str + """ + label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in "Xn" (e.g. Fe1) or "X_*" or "X-*" (e.g. C1, C_h; max total length cannot exceed 3 characters) + """ + Mass_X: float + """ + mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided) + """ + PseudoPot_X: str + """ + PseudoPot_X + """ + + +class ATOMICSPECIESWITHLABEL(BaseModel): + model_config = ConfigDict( + extra="forbid", + ) + X: str + """ + label of the atom. Acceptable syntax: chemical symbol X (1 or 2 characters, case-insensitive) or chemical symbol plus a number or a letter, as in "Xn" (e.g. Fe1) or "X_*" or "X-*" (e.g. C1, C_h; max total length cannot exceed 3 characters) + """ + Mass_X: float + """ + mass of the atomic species [amu: mass of C = 12]. Used only when performing Molecular Dynamics run or structural optimization runs using Damped MD. Not actually used in all other cases (but stored in data files, so phonon calculations will use these values unless other values are provided) + """ + PseudoPot_X: str + """ + PseudoPot_X + """ + + +class ATOMICPOSITION(BaseModel): + model_config = ConfigDict( + extra="forbid", + ) + X: Optional[str] = None + """ + label of the atom as specified in ATOMIC_SPECIES + """ + x: float + """ + atomic positions + """ + y: float + """ + atomic positions + """ + z: float + """ + atomic positions + """ + if_pos_1_: Optional[conint(ge=0, le=1)] = Field(None, alias="if_pos(1)", title="integer one or zero") + if_pos_2_: Optional[conint(ge=0, le=1)] = Field(None, alias="if_pos(2)", title="integer one or zero") + if_pos_3_: Optional[conint(ge=0, le=1)] = Field(None, alias="if_pos(3)", title="integer one or zero") + + +class CELLPARAMETERS(BaseModel): + model_config = ConfigDict( + extra="forbid", + ) + v1: Optional[List[float]] = Field(None, max_length=3, min_length=3, title="array of 3 number elements schema") + v2: Optional[List[float]] = Field(None, max_length=3, min_length=3, title="array of 3 number elements schema") + v3: Optional[List[float]] = Field(None, max_length=3, min_length=3, title="array of 3 number elements schema") + + +class FIRSTIMAGEItem(BaseModel): + model_config = ConfigDict( + extra="forbid", + ) + X: Optional[str] = None + """ + label of the atom as specified in ATOMIC_SPECIES + """ + x: float + """ + atomic positions + """ + y: float + """ + atomic positions + """ + z: float + """ + atomic positions + """ + if_pos_1_: Optional[conint(ge=0, le=1)] = Field(None, alias="if_pos(1)", title="integer one or zero") + if_pos_2_: Optional[conint(ge=0, le=1)] = Field(None, alias="if_pos(2)", title="integer one or zero") + if_pos_3_: Optional[conint(ge=0, le=1)] = Field(None, alias="if_pos(3)", title="integer one or zero") + + +class LASTIMAGEItem(BaseModel): + model_config = ConfigDict( + extra="forbid", + ) + X: Optional[str] = None + """ + label of the atom as specified in ATOMIC_SPECIES + """ + x: float + """ + atomic positions + """ + y: float + """ + atomic positions + """ + z: float + """ + atomic positions + """ + if_pos_1_: Optional[conint(ge=0, le=1)] = Field(None, alias="if_pos(1)", title="integer one or zero") + if_pos_2_: Optional[conint(ge=0, le=1)] = Field(None, alias="if_pos(2)", title="integer one or zero") + if_pos_3_: Optional[conint(ge=0, le=1)] = Field(None, alias="if_pos(3)", title="integer one or zero") + + +class INTERMEDIATEIMAGE(BaseModel): + model_config = ConfigDict( + extra="forbid", + ) + X: Optional[str] = None + """ + label of the atom as specified in ATOMIC_SPECIES + """ + x: float + """ + atomic positions + """ + y: float + """ + atomic positions + """ + z: float + """ + atomic positions + """ + if_pos_1_: Optional[conint(ge=0, le=1)] = Field(None, alias="if_pos(1)", title="integer one or zero") + if_pos_2_: Optional[conint(ge=0, le=1)] = Field(None, alias="if_pos(2)", title="integer one or zero") + if_pos_3_: Optional[conint(ge=0, le=1)] = Field(None, alias="if_pos(3)", title="integer one or zero") + + +class QENEBContextProviderSchema(BaseModel): + IBRAV: int + RESTART_MODE: Optional[RESTARTMODE] = "from_scratch" + ATOMIC_SPECIES: List[ATOMICSPECY] + ATOMIC_SPECIES_WITH_LABELS: List[ATOMICSPECIESWITHLABEL] + NAT: int + """ + number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms) + """ + NTYP: int + """ + number of types of atoms in the unit cell + """ + NTYP_WITH_LABELS: conint(ge=1) + """ + Number of different atomic species including labels + """ + ATOMIC_POSITIONS: Optional[List[ATOMICPOSITION]] = None + ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS: Optional[str] = None + """ + Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line + """ + CELL_PARAMETERS: CELLPARAMETERS + FIRST_IMAGE: List[FIRSTIMAGEItem] + LAST_IMAGE: List[LASTIMAGEItem] + INTERMEDIATE_IMAGES: List[List[INTERMEDIATEIMAGE]] + """ + Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images. + """ + contextProviderName: Literal["1#-datamodel-code-generator-#-object-#-special-#"] + """ + Descriminator for AJV validator + """ + + +class QEPwxContextProviderSchema(BaseModel): + IBRAV: int + RESTART_MODE: Optional[RESTARTMODE] = "from_scratch" + ATOMIC_SPECIES: List[ATOMICSPECY] + ATOMIC_SPECIES_WITH_LABELS: List[ATOMICSPECIESWITHLABEL] + NAT: int + """ + number of atoms in the unit cell (ALL atoms, except if space_group is set, in which case, INEQUIVALENT atoms) + """ + NTYP: int + """ + number of types of atoms in the unit cell + """ + NTYP_WITH_LABELS: conint(ge=1) + """ + Number of different atomic species including labels + """ + ATOMIC_POSITIONS: List[ATOMICPOSITION] + ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS: str + """ + Formatted text block for ATOMIC_POSITIONS card WITHOUT constraints. Format: 'X x y z' per line + """ + CELL_PARAMETERS: CELLPARAMETERS + contextProviderName: Literal["2#-datamodel-code-generator-#-object-#-special-#"] + """ + Descriminator for AJV validator + """ + + +class VASPContextProviderSchema(BaseModel): + POSCAR: str + """ + POSCAR content for VASP including lattice, atom types, positions and constraints. + """ + POSCAR_WITH_CONSTRAINTS: str + """ + POSCAR content for VASP including lattice, atom types, positions and constraints. May differ in how constraints are represented. + """ + contextProviderName: Literal["3#-datamodel-code-generator-#-object-#-special-#"] + """ + Descriminator for AJV validator + """ + + +class VASPNEBContextProviderSchema(BaseModel): + FIRST_IMAGE: str + """ + POSCAR content with constraints for the first NEB image. + """ + LAST_IMAGE: str + """ + POSCAR content with constraints for the last NEB image. + """ + INTERMEDIATE_IMAGES: List[str] + """ + POSCAR contents with constraints for all intermediate NEB images. + """ + contextProviderName: Literal["4#-datamodel-code-generator-#-object-#-special-#"] + """ + Descriminator for AJV validator + """ + + +class ExtraDataWithMaterialHashSchema(BaseModel): + materialHash: Optional[str] = None + """ + UI only property used to track material change for re-render + """ + + +class InputContextItemSchema(BaseModel): + name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] + data: Union[ + NWChemTotalEnergyContextProviderSchema, + QENEBContextProviderSchema, + QEPwxContextProviderSchema, + VASPContextProviderSchema, + VASPNEBContextProviderSchema, + ] = Field(..., discriminator="contextProviderName") + extraData: ExtraDataWithMaterialHashSchema = Field(..., title="extraData with materialHash schema") + isEdited: bool + + +class PlanewaveCutoffsContextProviderSchema(BaseModel): + wavefunction: Optional[float] = None + density: Optional[float] = None + + +class CutoffsContextItemSchema(BaseModel): + name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] + data: PlanewaveCutoffsContextProviderSchema = Field(..., title="Planewave Cutoffs Context Provider Schema") + """ + Planewave cutoff parameters for electronic wavefunctions and density. Units are specific to simulation engine. + """ + isEdited: bool + extraData: Dict[str, Any] + + +class Name(Enum): + kgrid = "kgrid" + qgrid = "qgrid" + igrid = "igrid" + + +class GridMetricType(Enum): + KPPRA = "KPPRA" + spacing = "spacing" + + +class PointsGridDataProviderSchema(BaseModel): + dimensions: Union[List[float], List[str]] + shifts: Optional[List[float]] = Field(None, max_length=3, min_length=3) + reciprocalVectorRatios: Optional[List[float]] = Field(None, max_length=3, min_length=3) + gridMetricType: GridMetricType + gridMetricValue: float + preferGridMetric: Optional[bool] = None + + +class GridContextItemSchema(BaseModel): + name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] + data: PointsGridDataProviderSchema = Field(..., title="Points Grid Data Provider Schema") + """ + 3D grid with shifts for k-point or q-point sampling. + """ + extraData: ExtraDataWithMaterialHashSchema = Field(..., title="extraData with materialHash schema") + isEdited: bool + + +class Name659(Enum): + qpath = "qpath" + ipath = "ipath" + kpath = "kpath" + explicitKPath = "explicitKPath" + explicitKPath2PIBA = "explicitKPath2PIBA" + + +class PointsPathDataProviderSchemaItem(BaseModel): + point: str + steps: float + + +class PathContextItemSchema(BaseModel): + name: Literal["3#-datamodel-code-generator-#-object-#-special-#"] + data: List[PointsPathDataProviderSchemaItem] = Field(..., min_length=1, title="Points Path Data Provider Schema") + """ + Path in reciprocal space for band structure calculations. User-editable and persisted fields only (coordinates are derived at render time). + """ + extraData: ExtraDataWithMaterialHashSchema = Field(..., title="extraData with materialHash schema") + isEdited: bool + + +class Species(Enum): + U = "U" + J = "J" + B = "B" + E2 = "E2" + E3 = "E3" + + +class HubbardJContextProviderSchemaItem(BaseModel): + paramType: Optional[Species] = Field(None, title="Species") + atomicSpecies: Optional[str] = Field(None, title="Species") + atomicOrbital: Optional[str] = Field(None, title="Orbital") + value: Optional[float] = Field(None, title="Value (eV)") + + +class HubbardJContextItemSchema(BaseModel): + name: Literal["4#-datamodel-code-generator-#-object-#-special-#"] + data: List[HubbardJContextProviderSchemaItem] = Field(..., min_length=1, title="Hubbard J Context Provider Schema") + """ + Hubbard parameters for DFT+U+J calculation. + """ + isEdited: bool + extraData: Dict[str, Any] + + +class HubbardUContextProviderSchemaItem(BaseModel): + atomicSpecies: Optional[str] = Field(None, title="Atomic species") + atomicOrbital: Optional[str] = Field(None, title="Atomic orbital") + hubbardUValue: Optional[float] = Field(None, title="Hubbard U (eV)") + + +class HubbardUContextItemSchema(BaseModel): + name: Literal["5#-datamodel-code-generator-#-object-#-special-#"] + data: List[HubbardUContextProviderSchemaItem] = Field(..., title="Hubbard U Context Provider Schema") + """ + Hubbard U parameters for DFT+U or DFT+U+V calculation. + """ + extraData: ExtraDataWithMaterialHashSchema = Field(..., title="extraData with materialHash schema") + isEdited: bool + + +class HubbardVContextProviderSchemaItem(BaseModel): + atomicSpecies: Optional[str] = Field(None, title="Species 1") + siteIndex: Optional[int] = Field(None, title="Site no 1") + atomicOrbital: Optional[str] = Field(None, title="Orbital 1") + atomicSpecies2: Optional[str] = Field(None, title="Species 2") + siteIndex2: Optional[int] = Field(None, title="Site no 2") + atomicOrbital2: Optional[str] = Field(None, title="Orbital 2") + hubbardVValue: Optional[float] = Field(None, title="V (eV)") + + +class HubbardVContextItemSchema(BaseModel): + name: Literal["6#-datamodel-code-generator-#-object-#-special-#"] + data: List[HubbardVContextProviderSchemaItem] = Field(..., min_length=1, title="Hubbard V Context Provider Schema") + """ + Hubbard V parameters for DFT+U+V calculation. + """ + isEdited: bool + extraData: Dict[str, Any] + + +class HubbardLegacyContextProviderSchemaItem(BaseModel): + atomicSpecies: Optional[str] = Field(None, title="Atomic species") + atomicSpeciesIndex: Optional[int] = Field(None, title="Species index") + hubbardUValue: Optional[float] = Field(None, title="Hubbard U (eV)") + + +class HubbardLegacyContextItemSchema(BaseModel): + name: Literal["7#-datamodel-code-generator-#-object-#-special-#"] + data: List[HubbardLegacyContextProviderSchemaItem] = Field( + ..., min_length=1, title="Hubbard Legacy Context Provider Schema" + ) + """ + Hubbard parameters for DFT+U calculation. + """ + isEdited: bool + extraData: Dict[str, Any] + + +class NEBDataProviderSchema(BaseModel): + nImages: Optional[float] = None + + +class NebContextItemSchema(BaseModel): + name: Literal["8#-datamodel-code-generator-#-object-#-special-#"] + data: NEBDataProviderSchema = Field(..., title="NEB Data Provider Schema") + """ + Number of intermediate NEB images. + """ + isEdited: bool + extraData: Dict[str, Any] + + +class Type(Enum): + pbc = "pbc" + bc1 = "bc1" + bc2 = "bc2" + bc3 = "bc3" + + +class BoundaryConditionsDataProviderSchema(BaseModel): + type: Optional[Type] = "pbc" + """ + If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab. + """ + offset: Optional[float] = None + electricField: Optional[float] = Field(None, title="Electric Field (eV/A)") + targetFermiEnergy: Optional[float] = Field(None, title="Target Fermi Energy (eV)") + + +class BoundaryConditionsContextItemSchema(BaseModel): + name: Literal["9#-datamodel-code-generator-#-object-#-special-#"] + data: BoundaryConditionsDataProviderSchema = Field(..., title="Boundary Conditions Data Provider Schema") + extraData: ExtraDataWithMaterialHashSchema = Field(..., title="extraData with materialHash schema") + isEdited: bool + + +class ProblemCategory(Enum): + regression = "regression" + classification = "classification" + clustering = "clustering" + + +class MLSettingsContextProviderSchema(BaseModel): + target_column_name: Optional[str] = None + problem_category: Optional[ProblemCategory] = None + + +class MlSettingsContextItemSchema(BaseModel): + name: Literal["10#-datamodel-code-generator-#-object-#-special-#"] + data: MLSettingsContextProviderSchema = Field(..., title="ML Settings Context Provider Schema") + """ + Settings important to machine learning runs. + """ + isEdited: bool + extraData: Dict[str, Any] + + +class MLTrainTestSplitContextProviderSchema(BaseModel): + fraction_held_as_test_set: Optional[confloat(ge=0.0, le=1.0)] = None + + +class MlTrainTestSplitContextItemSchema(BaseModel): + name: Literal["11#-datamodel-code-generator-#-object-#-special-#"] + data: MLTrainTestSplitContextProviderSchema = Field(..., title="ML Train Test Split Context Provider Schema") + """ + Fraction held as the test set. For example, a value of 0.2 corresponds to an 80/20 train/test split. + """ + isEdited: bool + extraData: Dict[str, Any] + + +class IonDynamicsContextProviderSchema(BaseModel): + numberOfSteps: Optional[int] = Field(None, title="numberOfSteps") + timeStep: Optional[float] = Field(None, title="timeStep (Hartree a.u.)") + electronMass: Optional[float] = Field(None, title="Effective electron mass") + temperature: Optional[float] = Field(None, title="Ionic temperature (K)") + + +class DynamicsContextItemSchema(BaseModel): + name: Literal["12#-datamodel-code-generator-#-object-#-special-#"] + data: IonDynamicsContextProviderSchema = Field(..., title="Ion Dynamics Context Provider Schema") + """ + Important parameters for molecular dynamics calculation + """ + isEdited: bool + extraData: Dict[str, Any] + + +class StartingMagnetizationItem(BaseModel): + atomicSpecies: str = Field(..., title="Atomic species") + value: confloat(ge=-1.0, le=1.0) = Field(..., title="Starting magnetization") + index: int = Field(..., title="Index") + + +class CollinearMagnetizationContextProviderSchema(BaseModel): + startingMagnetization: List[StartingMagnetizationItem] + isTotalMagnetization: bool = Field(..., title="Set total magnetization instead") + totalMagnetization: float = Field(..., title="Total magnetization") + + +class CollinearMagnetizationContextItemSchema(BaseModel): + name: Literal["13#-datamodel-code-generator-#-object-#-special-#"] + data: CollinearMagnetizationContextProviderSchema = Field( + ..., title="Collinear Magnetization Context Provider Schema" + ) + """ + Set starting magnetization, can have values in the range [-1, +1]. + """ + extraData: ExtraDataWithMaterialHashSchema = Field(..., title="extraData with materialHash schema") + isEdited: bool + + +class StartingMagnetizationItem19(BaseModel): + index: Optional[int] = Field(None, title="Index") + atomicSpecies: Optional[str] = Field(None, title="Atomic species") + value: Optional[float] = Field(None, title="Starting magnetization") + + +class SpinAngle(BaseModel): + index: Optional[int] = Field(None, title="Index") + atomicSpecies: Optional[str] = Field(None, title="Atomic species") + angle1: Optional[float] = Field(None, title="Angle1 (deg)") + angle2: Optional[float] = Field(None, title="Angle2 (deg)") + + +class ConstrainType(Enum): + none = "none" + total = "total" + atomic = "atomic" + total_direction = "total direction" + atomic_direction = "atomic direction" + + +class ConstrainedMagnetization(BaseModel): + constrainType: Optional[ConstrainType] = Field(None, title="Constrain type") + lambda_: Optional[float] = Field(None, alias="lambda", title="lambda") + + +class FixedMagnetization(BaseModel): + x: Optional[float] = Field(None, title="X-component") + y: Optional[float] = Field(None, title="Y-component") + z: Optional[float] = Field(None, title="Z-component") + + +class NonCollinearMagnetizationContextProviderSchema(BaseModel): + isExistingChargeDensity: Optional[bool] = Field(None, title="Use existing charge density") + isStartingMagnetization: Optional[bool] = Field(None, title="Set starting magnetization") + startingMagnetization: Optional[List[StartingMagnetizationItem19]] = None + isArbitrarySpinAngle: Optional[bool] = Field(None, title="Set arbitrary spin angle") + isArbitrarySpinDirection: Optional[bool] = Field(None, title="Set arbitrary spin direction") + lforcet: Optional[bool] = None + spinAngles: Optional[List[SpinAngle]] = None + isConstrainedMagnetization: Optional[bool] = Field(None, title="Set constrained magnetization") + constrainedMagnetization: Optional[ConstrainedMagnetization] = None + isFixedMagnetization: Optional[bool] = Field( + None, title="Set Fixed magnetization (only applicable to constrained magnetization of 'total' type)" + ) + fixedMagnetization: Optional[FixedMagnetization] = None + + +class NonCollinearMagnetizationContextItemSchema(BaseModel): + name: Literal["14#-datamodel-code-generator-#-object-#-special-#"] + data: NonCollinearMagnetizationContextProviderSchema = Field( + ..., title="Non Collinear Magnetization Context Provider Schema" + ) + """ + Non-collinear magnetization parameters including starting magnetization, spin angles, and constraints. + """ + extraData: ExtraDataWithMaterialHashSchema = Field(..., title="extraData with materialHash schema") + isEdited: bool + + +class ContextItemSchema( + RootModel[ + Union[ + InputContextItemSchema, + CutoffsContextItemSchema, + GridContextItemSchema, + PathContextItemSchema, + HubbardJContextItemSchema, + HubbardUContextItemSchema, + HubbardVContextItemSchema, + HubbardLegacyContextItemSchema, + NebContextItemSchema, + BoundaryConditionsContextItemSchema, + MlSettingsContextItemSchema, + MlTrainTestSplitContextItemSchema, + DynamicsContextItemSchema, + CollinearMagnetizationContextItemSchema, + NonCollinearMagnetizationContextItemSchema, + ] + ] +): + root: Union[ + InputContextItemSchema, + CutoffsContextItemSchema, + GridContextItemSchema, + PathContextItemSchema, + HubbardJContextItemSchema, + HubbardUContextItemSchema, + HubbardVContextItemSchema, + HubbardLegacyContextItemSchema, + NebContextItemSchema, + BoundaryConditionsContextItemSchema, + MlSettingsContextItemSchema, + MlTrainTestSplitContextItemSchema, + DynamicsContextItemSchema, + CollinearMagnetizationContextItemSchema, + NonCollinearMagnetizationContextItemSchema, + ] = Field(..., discriminator="name", title="context item schema") + + +class ExecutionUnitSchema(BaseModel): + id: Optional[str] = Field(None, alias="_id") + """ + entity identity + """ + slug: Optional[str] = None + """ + entity slug + """ + systemName: Optional[str] = None + schemaVersion: Optional[str] = "2022.8.16" + """ + entity's schema version. Used to distinct between different schemas. + """ + name: str + """ + entity name + """ + isDefault: Optional[bool] = False + """ + Identifies that entity is defaultable + """ + preProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the pre-processors for this calculation + """ + postProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the post-processors for this calculation + """ + monitors: List[RuntimeItemNameObjectSchema] + """ + names of the monitors for this calculation + """ + results: List[RuntimeItemNameObjectSchema] + """ + names of the results for this calculation + """ + tags: Optional[List[str]] = None + """ + entity tags + """ + statusTrack: Optional[List[StatusTrackItem]] = None + isDraft: Optional[bool] = None + head: Optional[bool] = None + """ + Whether this unit is the first one to be executed. + """ + flowchartId: str + """ + Identity of the unit in the workflow. Used to trace the execution flow of the workflow. + """ + next: Optional[str] = None + """ + Next unit's flowchartId. If empty, the current unit is the last. + """ + enableRender: Optional[bool] = None + """ + Whether Rupy should attempt to use Jinja templating to add context variables into the unit + """ + status: Optional[Status] = None + """ + Status of the unit. + """ + type: Literal["3#-datamodel-code-generator-#-object-#-special-#"] + application: ApplicationSchema = Field(..., title="application schema") + executable: NamedDefaultableInMemoryEntitySchema = Field(..., title="Named defaultable in-memory entity schema") + flavor: FlavorSchema = Field(..., title="flavor schema") + input: List[ExecutionUnitInputItemSchema] + context: Optional[List[ContextItemSchema]] = [] + + +class AssignmentUnitSchema(BaseModel): + id: Optional[str] = Field(None, alias="_id") + """ + entity identity + """ + slug: Optional[str] = None + """ + entity slug + """ + systemName: Optional[str] = None + schemaVersion: Optional[str] = "2022.8.16" + """ + entity's schema version. Used to distinct between different schemas. + """ + name: str + """ + entity name + """ + isDefault: Optional[bool] = False + """ + Identifies that entity is defaultable + """ + preProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the pre-processors for this calculation + """ + postProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the post-processors for this calculation + """ + monitors: List[RuntimeItemNameObjectSchema] + """ + names of the monitors for this calculation + """ + results: List[RuntimeItemNameObjectSchema] + """ + names of the results for this calculation + """ + tags: Optional[List[str]] = None + """ + entity tags + """ + statusTrack: Optional[List[StatusTrackItem]] = None + isDraft: Optional[bool] = None + head: Optional[bool] = None + """ + Whether this unit is the first one to be executed. + """ + flowchartId: str + """ + Identity of the unit in the workflow. Used to trace the execution flow of the workflow. + """ + next: Optional[str] = None + """ + Next unit's flowchartId. If empty, the current unit is the last. + """ + enableRender: Optional[bool] = None + """ + Whether Rupy should attempt to use Jinja templating to add context variables into the unit + """ + status: Optional[Status] = None + """ + Status of the unit. + """ + scope: Optional[str] = None + type: Literal["4#-datamodel-code-generator-#-object-#-special-#"] + input: List[WorkflowUnitInputSchema] + """ + Input information for assignment. if omitted, means that it is an initialization unit, otherwise it is an assignment. + """ + operand: str + """ + Name of the global variable. e.g. 'x' + """ + value: Union[str, bool, float] + """ + Value of the variable. The value content could be a simple integer, string or a python expression. e.g. '0' (initialization), 'sin(x)+1' (expression) + """ + + +class ErrorUnitSchema(BaseModel): + id: Optional[str] = Field(None, alias="_id") + """ + entity identity + """ + slug: Optional[str] = None + """ + entity slug + """ + systemName: Optional[str] = None + schemaVersion: Optional[str] = "2022.8.16" + """ + entity's schema version. Used to distinct between different schemas. + """ + name: str + """ + entity name + """ + isDefault: Optional[bool] = False + """ + Identifies that entity is defaultable + """ + preProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the pre-processors for this calculation + """ + postProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the post-processors for this calculation + """ + monitors: List[RuntimeItemNameObjectSchema] + """ + names of the monitors for this calculation + """ + results: List[RuntimeItemNameObjectSchema] + """ + names of the results for this calculation + """ + tags: Optional[List[str]] = None + """ + entity tags + """ + statusTrack: Optional[List[StatusTrackItem]] = None + isDraft: Optional[bool] = None + head: Optional[bool] = None + """ + Whether this unit is the first one to be executed. + """ + flowchartId: str + """ + Identity of the unit in the workflow. Used to trace the execution flow of the workflow. + """ + next: Optional[str] = None + """ + Next unit's flowchartId. If empty, the current unit is the last. + """ + enableRender: Optional[bool] = None + """ + Whether Rupy should attempt to use Jinja templating to add context variables into the unit + """ + status: Optional[Status] = None + """ + Status of the unit. + """ + type: Literal["5#-datamodel-code-generator-#-object-#-special-#"] + reason: str + """ + JSON string with validation/hydration details: { error, json, schema } + """ + + +class WorkflowSubworkflowUnitSchema( + RootModel[ + Union[ + DataIOUnitSchema, + ConditionUnitSchema, + AssertionUnitSchema, + ExecutionUnitSchema, + AssignmentUnitSchema, + ErrorUnitSchema, + ] + ] +): + root: Union[ + DataIOUnitSchema, + ConditionUnitSchema, + AssertionUnitSchema, + ExecutionUnitSchema, + AssignmentUnitSchema, + ErrorUnitSchema, + ] = Field(..., discriminator="type", title="workflow subworkflow unit schema") + + +class Functional(Enum): + pz = "pz" + pw = "pw" + vwn = "vwn" + other = "other" + + +class Data(BaseModel): + model_config = ConfigDict( + extra="allow", + ) + searchText: Optional[str] = None + + +class BaseMethod(BaseModel): + type: str + """ + general type of this method, eg. `pseudopotential` + """ + subtype: str + """ + general subtype of this method, eg. `ultra-soft` + """ + precision: Optional[Dict[str, Any]] = None + """ + Object showing the actual possible precision based on theory and implementation + """ + data: Optional[Data] = None + """ + additional data specific to method, eg. array of pseudopotentials + """ + + +class DFTLDAModelSchema(BaseModel): + type: Literal["dft"] + subtype: Literal["0#-datamodel-code-generator-#-object-#-special-#"] + functional: Functional + method: BaseMethod = Field(..., title="base method") + + +class Functional44(Enum): + pbe = "pbe" + pbesol = "pbesol" + pw91 = "pw91" + other = "other" + + +class BaseMethod27(BaseModel): + type: str + """ + general type of this method, eg. `pseudopotential` + """ + subtype: str + """ + general subtype of this method, eg. `ultra-soft` + """ + precision: Optional[Dict[str, Any]] = None + """ + Object showing the actual possible precision based on theory and implementation + """ + data: Optional[Data] = None + """ + additional data specific to method, eg. array of pseudopotentials + """ + + +class DFTGGAModelSchema(BaseModel): + type: Literal["dft"] + subtype: Literal["1#-datamodel-code-generator-#-object-#-special-#"] + functional: Functional44 + method: BaseMethod27 = Field(..., title="base method") + + +class Functional45(Enum): + b3lyp = "b3lyp" + hse06 = "hse06" + other = "other" + + +class BaseMethod28(BaseModel): + type: str + """ + general type of this method, eg. `pseudopotential` + """ + subtype: str + """ + general subtype of this method, eg. `ultra-soft` + """ + precision: Optional[Dict[str, Any]] = None + """ + Object showing the actual possible precision based on theory and implementation + """ + data: Optional[Data] = None + """ + additional data specific to method, eg. array of pseudopotentials + """ + + +class DFTHybridModelSchema(BaseModel): + type: Literal["dft"] + subtype: Literal["2#-datamodel-code-generator-#-object-#-special-#"] + functional: Functional45 + method: BaseMethod28 = Field(..., title="base method") + + +class Type104(Enum): + ml = "ml" + + +class Subtype14(Enum): + re = "re" + + +class BaseMethod29(BaseModel): + type: str + """ + general type of this method, eg. `pseudopotential` + """ + subtype: str + """ + general subtype of this method, eg. `ultra-soft` + """ + precision: Optional[Dict[str, Any]] = None + """ + Object showing the actual possible precision based on theory and implementation + """ + data: Optional[Data] = None + """ + additional data specific to method, eg. array of pseudopotentials + """ + + +class MLModelSchema(BaseModel): + type: Type104 + subtype: Literal["3#-datamodel-code-generator-#-object-#-special-#"] + method: BaseMethod29 = Field(..., title="base method") + + +class Type105(Enum): + unknown = "unknown" + + +class Subtype15(Enum): + unknown = "unknown" + + +class BaseMethod30(BaseModel): + type: str + """ + general type of this method, eg. `pseudopotential` + """ + subtype: str + """ + general subtype of this method, eg. `ultra-soft` + """ + precision: Optional[Dict[str, Any]] = None + """ + Object showing the actual possible precision based on theory and implementation + """ + data: Optional[Data] = None + """ + additional data specific to method, eg. array of pseudopotentials + """ + + +class UnknownModelSchema(BaseModel): + type: Type105 + subtype: Literal["4#-datamodel-code-generator-#-object-#-special-#"] + method: BaseMethod30 = Field(..., title="base method") + + +class ApplicationSchema12(BaseModel): + id: Optional[str] = Field(None, alias="_id") + """ + entity identity + """ + slug: Optional[str] = None + """ + entity slug + """ + systemName: Optional[str] = None + schemaVersion: Optional[str] = "2022.8.16" + """ + entity's schema version. Used to distinct between different schemas. + """ + name: str + """ + entity name + """ + isDefault: Optional[bool] = False + """ + Identifies that entity is defaultable + """ + shortName: str + """ + The short name of the application. e.g. qe + """ + summary: str + """ + Application's short description. + """ + version: str + """ + Application version. e.g. 5.3.5 + """ + build: str + """ + Application build. e.g. VTST + """ + isDefaultVersion: Optional[bool] = None + """ + Whether the version is the default version + """ + hasAdvancedComputeOptions: Optional[bool] = None + """ + Whether advanced compute options are present + """ + isLicensed: Optional[bool] = None + """ + Whether licensing is present + """ + isUsingMaterial: Optional[bool] = None + """ + Whether the application is using (being passed during a downstream processing routine) a material structure. + """ + runConfig: Optional[RunConfig] = None + """ + The run configuration of the application + """ + + +class SubworkflowSchema(BaseModel): + id: Optional[str] = Field(None, alias="_id") + """ + entity identity + """ + slug: Optional[str] = None + """ + entity slug + """ + systemName: Optional[str] = None + schemaVersion: Optional[str] = "2022.8.16" + """ + entity's schema version. Used to distinct between different schemas. + """ + name: str + """ + entity name + """ + properties: List[str] + """ + Array of characteristic properties calculated by this subworkflow + """ + compute: Optional[ComputeArgumentsSchema11] = Field(None, title="compute arguments schema") + """ + Compute schema + """ + units: List[WorkflowSubworkflowUnitSchema] + """ + Contains the Units of the subworkflow + """ + model: Union[DFTLDAModelSchema, DFTGGAModelSchema, DFTHybridModelSchema, MLModelSchema, UnknownModelSchema] = Field( + ..., discriminator="subtype", title="Any model schema" + ) + application: ApplicationSchema12 = Field(..., title="application schema") + isMultiMaterial: Optional[bool] = None + isDraft: Optional[bool] = False + """ + Defines whether to store the results/properties extracted in this unit to properties collection + """ + + +class Input11(BaseModel): + target: str + """ + Name of the target variable to substitute using the values below. e.g. K_POINTS + """ + scope: Optional[str] = None + """ + Scope to retrieve `values` from, global or flowchartId. Optional if `values` is given. + """ + name: Optional[str] = None + """ + Name of the variable inside the scope to retrieve `values` from. Optional if `values` is given. + """ + values: Optional[List[Union[str, float, Dict[str, Any]]]] = None + """ + Sequence of values for the target Jinja variable. Optional if `scope` and `name` are given. This can be used for map-reduce type parallel execution + """ + useValues: Optional[bool] = None + + +class MapUnitSchema(BaseModel): + id: Optional[str] = Field(None, alias="_id") + """ + entity identity + """ + slug: Optional[str] = None + """ + entity slug + """ + systemName: Optional[str] = None + schemaVersion: Optional[str] = "2022.8.16" + """ + entity's schema version. Used to distinct between different schemas. + """ + name: str + """ + entity name + """ + isDefault: Optional[bool] = False + """ + Identifies that entity is defaultable + """ + preProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the pre-processors for this calculation + """ + postProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the post-processors for this calculation + """ + monitors: List[RuntimeItemNameObjectSchema] + """ + names of the monitors for this calculation + """ + results: List[RuntimeItemNameObjectSchema] + """ + names of the results for this calculation + """ + tags: Optional[List[str]] = None + """ + entity tags + """ + statusTrack: Optional[List[StatusTrackItem]] = None + isDraft: Optional[bool] = None + head: Optional[bool] = None + """ + Whether this unit is the first one to be executed. + """ + flowchartId: str + """ + Identity of the unit in the workflow. Used to trace the execution flow of the workflow. + """ + next: Optional[str] = None + """ + Next unit's flowchartId. If empty, the current unit is the last. + """ + enableRender: Optional[bool] = None + """ + Whether Rupy should attempt to use Jinja templating to add context variables into the unit + """ + status: Optional[Status] = None + """ + Status of the unit. + """ + type: Literal["0#-datamodel-code-generator-#-object-#-special-#"] + workflowId: str + """ + Id of workflow to run inside map + """ + input: Input11 + """ + Input information for map. + """ + + +class InputItem(BaseModel): + operation: str + """ + reduce operation, e.g. aggregate + """ + arguments: List[str] + """ + arguments which are passed to reduce operation function + """ + + +class ReduceUnitSchema(BaseModel): + id: Optional[str] = Field(None, alias="_id") + """ + entity identity + """ + slug: Optional[str] = None + """ + entity slug + """ + systemName: Optional[str] = None + schemaVersion: Optional[str] = "2022.8.16" + """ + entity's schema version. Used to distinct between different schemas. + """ + name: str + """ + entity name + """ + isDefault: Optional[bool] = False + """ + Identifies that entity is defaultable + """ + preProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the pre-processors for this calculation + """ + postProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the post-processors for this calculation + """ + monitors: List[RuntimeItemNameObjectSchema] + """ + names of the monitors for this calculation + """ + results: List[RuntimeItemNameObjectSchema] + """ + names of the results for this calculation + """ + tags: Optional[List[str]] = None + """ + entity tags + """ + statusTrack: Optional[List[StatusTrackItem]] = None + isDraft: Optional[bool] = None + head: Optional[bool] = None + """ + Whether this unit is the first one to be executed. + """ + flowchartId: str + """ + Identity of the unit in the workflow. Used to trace the execution flow of the workflow. + """ + next: Optional[str] = None + """ + Next unit's flowchartId. If empty, the current unit is the last. + """ + enableRender: Optional[bool] = None + """ + Whether Rupy should attempt to use Jinja templating to add context variables into the unit + """ + status: Optional[Status] = None + """ + Status of the unit. + """ + type: Literal["1#-datamodel-code-generator-#-object-#-special-#"] + mapFlowchartId: str + """ + corresponding map unit flowchart ID + """ + input: List[InputItem] + """ + input information for reduce unit + """ + + +class SubworkflowUnitSchema(BaseModel): + id: Optional[str] = Field(None, alias="_id") + """ + entity identity + """ + slug: Optional[str] = None + """ + entity slug + """ + systemName: Optional[str] = None + schemaVersion: Optional[str] = "2022.8.16" + """ + entity's schema version. Used to distinct between different schemas. + """ + name: str + """ + entity name + """ + isDefault: Optional[bool] = False + """ + Identifies that entity is defaultable + """ + preProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the pre-processors for this calculation + """ + postProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the post-processors for this calculation + """ + monitors: List[RuntimeItemNameObjectSchema] + """ + names of the monitors for this calculation + """ + results: List[RuntimeItemNameObjectSchema] + """ + names of the results for this calculation + """ + tags: Optional[List[str]] = None + """ + entity tags + """ + statusTrack: Optional[List[StatusTrackItem]] = None + isDraft: Optional[bool] = None + head: Optional[bool] = None + """ + Whether this unit is the first one to be executed. + """ + flowchartId: str + """ + Identity of the unit in the workflow. Used to trace the execution flow of the workflow. + """ + next: Optional[str] = None + """ + Next unit's flowchartId. If empty, the current unit is the last. + """ + enableRender: Optional[bool] = None + """ + Whether Rupy should attempt to use Jinja templating to add context variables into the unit + """ + status: Optional[Status] = None + """ + Status of the unit. + """ + type: Literal["2#-datamodel-code-generator-#-object-#-special-#"] + + +class ErrorUnitSchema8(BaseModel): + id: Optional[str] = Field(None, alias="_id") + """ + entity identity + """ + slug: Optional[str] = None + """ + entity slug + """ + systemName: Optional[str] = None + schemaVersion: Optional[str] = "2022.8.16" + """ + entity's schema version. Used to distinct between different schemas. + """ + name: str + """ + entity name + """ + isDefault: Optional[bool] = False + """ + Identifies that entity is defaultable + """ + preProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the pre-processors for this calculation + """ + postProcessors: List[RuntimeItemNameObjectSchema] + """ + names of the post-processors for this calculation + """ + monitors: List[RuntimeItemNameObjectSchema] + """ + names of the monitors for this calculation + """ + results: List[RuntimeItemNameObjectSchema] + """ + names of the results for this calculation + """ + tags: Optional[List[str]] = None + """ + entity tags + """ + statusTrack: Optional[List[StatusTrackItem]] = None + isDraft: Optional[bool] = None + head: Optional[bool] = None + """ + Whether this unit is the first one to be executed. + """ + flowchartId: str + """ + Identity of the unit in the workflow. Used to trace the execution flow of the workflow. + """ + next: Optional[str] = None + """ + Next unit's flowchartId. If empty, the current unit is the last. + """ + enableRender: Optional[bool] = None + """ + Whether Rupy should attempt to use Jinja templating to add context variables into the unit + """ + status: Optional[Status] = None + """ + Status of the unit. + """ + type: Literal["3#-datamodel-code-generator-#-object-#-special-#"] + reason: str + """ + JSON string with validation/hydration details: { error, json, schema } + """ + + +class WorkflowUnitSchema(RootModel[Union[MapUnitSchema, ReduceUnitSchema, SubworkflowUnitSchema, ErrorUnitSchema8]]): + root: Union[MapUnitSchema, ReduceUnitSchema, SubworkflowUnitSchema, ErrorUnitSchema8] = Field( + ..., discriminator="type", title="workflow unit schema" + ) + + +class Application(BaseModel): + name: Optional[str] = None + """ + name of the application + """ + + +class WorkflowSchema(BaseModel): + workflows: List[Dict[str, Any]] + """ + Array of workflows with the same schema as the current one. + """ + compute: Optional[ComputeArgumentsSchema] = Field(None, title="compute arguments schema") + """ + Compute schema + """ + id: Optional[str] = Field(None, alias="_id") + """ + entity identity + """ + slug: Optional[str] = None + """ + entity slug + """ + systemName: Optional[str] = None + schemaVersion: Optional[str] = "2022.8.16" + """ + entity's schema version. Used to distinct between different schemas. + """ + name: str + """ + entity name + """ + metadata: Optional[Dict[str, Any]] = None + properties: List[str] + """ + Array of characteristic properties calculated by this workflow (TODO: add enums) + """ + isUsingDataset: Optional[bool] = None + """ + Whether to use the dataset tab in the job designer. Mutually exclusive with using the materials tab. + """ + isMultiMaterial: Optional[bool] = None + """ + Defines whether the workflow is for a multi-material simulation + """ + subworkflows: List[SubworkflowSchema] + """ + Array of subworkflows. Subworkflow can be an instance of workflow to allow for nesting + """ + units: List[WorkflowUnitSchema] + """ + Contains the Units of the Workflow + """ + application: Optional[Application] = None + """ + information about the main application used for workflow categorization by application in standata. + """ + tags: Optional[List[str]] = None + """ + tags for the workflow + """ + description: Optional[str] = None + """ + entity description + """ + descriptionObject: Optional[Dict[str, Any]] = None + + +class Status53(Enum): + pre_submission = "pre-submission" + queued = "queued" + submitted = "submitted" + active = "active" + finished = "finished" + terminate_queued = "terminate-queued" + terminated = "terminated" + error = "error" + deleted = "deleted" + timeout = "timeout" + + +class MeasurementSchema(BaseModel): + sample: EntityReferenceSchema = Field(..., alias="_sample", title="entity reference schema") + materials: Optional[List[EntityReferenceSchema]] = Field(None, alias="_materials") + """ + Materials related to the sample, when known (e.g. matched candidates) + """ + workflow: WorkflowSchema = Field(..., title="workflow schema") + status: Status53 + """ + Status of the measurement; finished when it reaches the platform + """ + id: Optional[str] = Field(None, alias="_id") + """ + entity identity + """ + slug: Optional[str] = None + """ + entity slug + """ + systemName: Optional[str] = None + schemaVersion: Optional[str] = "2022.8.16" + """ + entity's schema version. Used to distinct between different schemas. + """ + name: str + """ + entity name + """ + isDefault: Optional[bool] = False + """ + Identifies that entity is defaultable + """ + metadata: Optional[Dict[str, Any]] = None diff --git a/src/py/mat3ra/esse/models/methods_category/mathematical/opt/diff/bracket.py b/src/py/mat3ra/esse/models/methods_category/mathematical/opt/diff/bracket.py index adc936f23..fd006e983 100644 --- a/src/py/mat3ra/esse/models/methods_category/mathematical/opt/diff/bracket.py +++ b/src/py/mat3ra/esse/models/methods_category/mathematical/opt/diff/bracket.py @@ -25,11 +25,11 @@ class SlugifiedEntryOrSlug(Enum): bracket = "bracket" -class SlugifiedEntryOrSlug15(Enum): +class SlugifiedEntryOrSlug12(Enum): diff = "diff" -class SlugifiedEntryOrSlug16(Enum): +class SlugifiedEntryOrSlug13(Enum): opt = "opt" @@ -38,11 +38,11 @@ class BracketAlgorithmsForTheOptimizationOfDifferentiableFunctionsSchema(BaseMod """ contains either object with slugified entry or slug only as a string """ - tier2: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug15]] = Field(None, title="slugified entry or slug") + tier2: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug12]] = Field(None, title="slugified entry or slug") """ contains either object with slugified entry or slug only as a string """ - tier1: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug16]] = Field(None, title="slugified entry or slug") + tier1: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug13]] = Field(None, title="slugified entry or slug") """ contains either object with slugified entry or slug only as a string """ diff --git a/src/py/mat3ra/esse/models/methods_category/mathematical/opt/root/bracket.py b/src/py/mat3ra/esse/models/methods_category/mathematical/opt/root/bracket.py index 290685444..82c417ee5 100644 --- a/src/py/mat3ra/esse/models/methods_category/mathematical/opt/root/bracket.py +++ b/src/py/mat3ra/esse/models/methods_category/mathematical/opt/root/bracket.py @@ -25,11 +25,11 @@ class SlugifiedEntryOrSlug(Enum): bracket = "bracket" -class SlugifiedEntryOrSlug12(Enum): +class SlugifiedEntryOrSlug15(Enum): root = "root" -class SlugifiedEntryOrSlug13(Enum): +class SlugifiedEntryOrSlug16(Enum): opt = "opt" @@ -38,11 +38,11 @@ class BracketingMethodForFindingRootsCategorySchema(BaseModel): """ contains either object with slugified entry or slug only as a string """ - tier2: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug12]] = Field(None, title="slugified entry or slug") + tier2: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug15]] = Field(None, title="slugified entry or slug") """ contains either object with slugified entry or slug only as a string """ - tier1: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug13]] = Field(None, title="slugified entry or slug") + tier1: Optional[Union[SlugifiedEntry, SlugifiedEntryOrSlug16]] = Field(None, title="slugified entry or slug") """ contains either object with slugified entry or slug only as a string """ diff --git a/src/py/mat3ra/esse/models/model/model_parameters.py b/src/py/mat3ra/esse/models/model/model_parameters.py index f391e13a4..53c8f6251 100644 --- a/src/py/mat3ra/esse/models/model/model_parameters.py +++ b/src/py/mat3ra/esse/models/model/model_parameters.py @@ -41,7 +41,7 @@ class LDAFunctionalMixin(BaseModel): functional: Optional[Functional] = None -class Functional52(Enum): +class Functional55(Enum): pbe = "pbe" pbesol = "pbesol" @@ -54,10 +54,10 @@ class GGAFunctionalMixin(BaseModel): spinPolarization: Optional[SpinPolarization] = None spinOrbitCoupling: Optional[bool] = None dispersionCorrection: Optional[DispersionCorrection] = None - functional: Optional[Functional52] = None + functional: Optional[Functional55] = None -class Functional53(Enum): +class Functional56(Enum): scan = "scan" @@ -69,10 +69,10 @@ class MetaGGAFunctionalMixin(BaseModel): spinPolarization: Optional[SpinPolarization] = None spinOrbitCoupling: Optional[bool] = None dispersionCorrection: Optional[DispersionCorrection] = None - functional: Optional[Functional53] = None + functional: Optional[Functional56] = None -class Functional54(Enum): +class Functional57(Enum): hse06 = "hse06" b3lyp = "b3lyp" @@ -85,10 +85,10 @@ class HybridFunctionalMixin(BaseModel): spinPolarization: Optional[SpinPolarization] = None spinOrbitCoupling: Optional[bool] = None dispersionCorrection: Optional[DispersionCorrection] = None - functional: Optional[Functional54] = None + functional: Optional[Functional57] = None -class Functional55(Enum): +class Functional58(Enum): b2plyp = "b2plyp" @@ -100,7 +100,7 @@ class DoubleHybridFunctionalMixin(BaseModel): spinPolarization: Optional[SpinPolarization] = None spinOrbitCoupling: Optional[bool] = None dispersionCorrection: Optional[DispersionCorrection] = None - functional: Optional[Functional55] = None + functional: Optional[Functional58] = None class ESSE( diff --git a/src/py/mat3ra/esse/models/properties_directory/enum_options.py b/src/py/mat3ra/esse/models/properties_directory/enum_options.py index e71a04954..d4ab7ba12 100644 --- a/src/py/mat3ra/esse/models/properties_directory/enum_options.py +++ b/src/py/mat3ra/esse/models/properties_directory/enum_options.py @@ -61,6 +61,7 @@ class NonScalarPropertyEnum(Enum): hubbard_u = "hubbard_u" hubbard_v = "hubbard_v" hubbard_v_nn = "hubbard_v_nn" + hysteresis_loop = "hysteresis_loop" is_relaxed = "is_relaxed" jupyter_notebook_endpoint = "jupyter_notebook_endpoint" phonon_dispersions = "phonon_dispersions" diff --git a/src/py/mat3ra/esse/models/properties_directory/non_scalar/hysteresis_loop.py b/src/py/mat3ra/esse/models/properties_directory/non_scalar/hysteresis_loop.py new file mode 100644 index 000000000..c72608c14 --- /dev/null +++ b/src/py/mat3ra/esse/models/properties_directory/non_scalar/hysteresis_loop.py @@ -0,0 +1,202 @@ +# generated by datamodel-codegen: +# filename: properties_directory/non_scalar/hysteresis_loop.json +# version: 0.28.5 + +from __future__ import annotations + +from enum import Enum +from typing import List, Optional, Union + +from pydantic import BaseModel, Field + + +class Label(Enum): + bias = "bias" + + +class Units(Enum): + V = "V" + mV = "mV" + + +class AxisSchema(BaseModel): + label: Label + """ + label of an axis object + """ + units: Optional[Units] = None + """ + units for an axis + """ + + +class Label29(Enum): + response = "response" + + +class Units265(Enum): + km = "km" + m = "m" + cm = "cm" + mm = "mm" + um = "um" + nm = "nm" + angstrom = "angstrom" + a_u_ = "a.u." + bohr = "bohr" + pm = "pm" + + +class AxisSchema32(BaseModel): + label: Label29 + """ + label of an axis object + """ + units: Optional[Units265] = None + """ + units for an axis + """ + + +class Name(Enum): + hysteresis_loop = "hysteresis_loop" + + +class FieldConditionSchema(Enum): + on = "on" + off = "off" + + +class CombinedValueSchema(BaseModel): + value: float + """ + mean over the combined measurements + """ + standardDeviation: float + """ + population standard deviation over the combined measurements (not the standard error of the mean) + """ + count: int + """ + number of measurements combined + """ + + +class CoerciveVoltage(BaseModel): + rising: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ + falling: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ + + +class RemanentResponse(BaseModel): + rising: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ + falling: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ + + +class HysteresisLoopParametersSchema(BaseModel): + imprint: CombinedValueSchema = Field(..., title="Combined value schema") + """ + bias at the centre of the loop: half the sum of the two coercive voltages + """ + coerciveVoltage: CoerciveVoltage + """ + bias at which the response crosses the loop's offset, on the rising and the falling branch + """ + loopWidth: CombinedValueSchema = Field(..., title="Combined value schema") + """ + bias separation of the two coercive voltages + """ + loopHeight: CombinedValueSchema = Field(..., title="Combined value schema") + """ + response separation of the two remanent responses + """ + remanentResponse: RemanentResponse + """ + response at zero bias, on the rising and the falling branch + """ + + +class CoerciveVoltage3(BaseModel): + rising: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ + falling: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ + + +class RemanentResponse3(BaseModel): + rising: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ + falling: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ + + +class HysteresisLoopParametersSchema3(BaseModel): + imprint: CombinedValueSchema = Field(..., title="Combined value schema") + """ + bias at the centre of the loop: half the sum of the two coercive voltages + """ + coerciveVoltage: CoerciveVoltage3 + """ + bias at which the response crosses the loop's offset, on the rising and the falling branch + """ + loopWidth: CombinedValueSchema = Field(..., title="Combined value schema") + """ + bias separation of the two coercive voltages + """ + loopHeight: CombinedValueSchema = Field(..., title="Combined value schema") + """ + response separation of the two remanent responses + """ + remanentResponse: RemanentResponse3 + """ + response at zero bias, on the rising and the falling branch + """ + + +class Parameters(BaseModel): + on: HysteresisLoopParametersSchema = Field(..., title="Hysteresis loop parameters schema") + """ + Parameters read from a hysteresis loop, each combined over the loops measured at one field condition. Voltages are in the loop's xAxis units, responses in its yAxis units + """ + off: HysteresisLoopParametersSchema3 = Field(..., title="Hysteresis loop parameters schema") + """ + Parameters read from a hysteresis loop, each combined over the loops measured at one field condition. Voltages are in the loop's xAxis units, responses in its yAxis units + """ + + +class HysteresisLoopPropertySchema(BaseModel): + xAxis: AxisSchema = Field(..., title="axis schema") + yAxis: AxisSchema32 = Field(..., title="axis schema") + name: Name + legend: List[FieldConditionSchema] + """ + the field condition of each series in yDataSeries + """ + parameters: Parameters + """ + parameters read from the loop of each field condition; their voltages are in xAxis units and their responses in yAxis units + """ + xDataArray: List[Union[float, List[float]]] + """ + array containing values of x Axis + """ + yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema") diff --git a/src/py/mat3ra/esse/models/properties_directory/non_scalar/phonon_dispersions.py b/src/py/mat3ra/esse/models/properties_directory/non_scalar/phonon_dispersions.py index 038965f10..ef656b0db 100644 --- a/src/py/mat3ra/esse/models/properties_directory/non_scalar/phonon_dispersions.py +++ b/src/py/mat3ra/esse/models/properties_directory/non_scalar/phonon_dispersions.py @@ -30,22 +30,22 @@ class AxisSchema(BaseModel): """ -class Label27(Enum): +class Label31(Enum): frequency = "frequency" -class Units315(Enum): +class Units319(Enum): cm_1 = "cm-1" THz = "THz" meV = "meV" -class AxisSchema30(BaseModel): - label: Label27 +class AxisSchema34(BaseModel): + label: Label31 """ label of an axis object """ - units: Optional[Units315] = None + units: Optional[Units319] = None """ units for an axis """ @@ -57,7 +57,7 @@ class Name(Enum): class PhononBandStructurePropertySchema(BaseModel): xAxis: AxisSchema = Field(..., title="axis schema") - yAxis: AxisSchema30 = Field(..., title="axis schema") + yAxis: AxisSchema34 = Field(..., title="axis schema") name: Name xDataArray: List[Union[float, List[float]]] """ diff --git a/src/py/mat3ra/esse/models/properties_directory/non_scalar/phonon_dos.py b/src/py/mat3ra/esse/models/properties_directory/non_scalar/phonon_dos.py index 4aebb10fc..b3ab82872 100644 --- a/src/py/mat3ra/esse/models/properties_directory/non_scalar/phonon_dos.py +++ b/src/py/mat3ra/esse/models/properties_directory/non_scalar/phonon_dos.py @@ -31,22 +31,22 @@ class AxisSchema(BaseModel): """ -class Label29(Enum): +class Label33(Enum): Phonon_DOS = "Phonon DOS" -class Units317(Enum): +class Units321(Enum): states_cm_1 = "states/cm-1" states_THz = "states/THz" states_meV = "states/meV" -class AxisSchema32(BaseModel): - label: Label29 +class AxisSchema36(BaseModel): + label: Label33 """ label of an axis object """ - units: Optional[Units317] = None + units: Optional[Units321] = None """ units for an axis """ @@ -58,7 +58,7 @@ class Name(Enum): class PhononDensityOfStatesPropertySchema(BaseModel): xAxis: AxisSchema = Field(..., title="axis schema") - yAxis: AxisSchema32 = Field(..., title="axis schema") + yAxis: AxisSchema36 = Field(..., title="axis schema") name: Name xDataArray: List[Union[float, List[float]]] """ diff --git a/src/py/mat3ra/esse/models/properties_directory/non_scalar/potential_profile.py b/src/py/mat3ra/esse/models/properties_directory/non_scalar/potential_profile.py index 67b77dbe1..1f33afb3e 100644 --- a/src/py/mat3ra/esse/models/properties_directory/non_scalar/potential_profile.py +++ b/src/py/mat3ra/esse/models/properties_directory/non_scalar/potential_profile.py @@ -25,7 +25,7 @@ class AxisSchema(BaseModel): """ -class Label31(Enum): +class Label35(Enum): energy = "energy" @@ -40,8 +40,8 @@ class Units(Enum): eV_atom = "eV/atom" -class AxisSchema34(BaseModel): - label: Label31 +class AxisSchema38(BaseModel): + label: Label35 """ label of an axis object """ @@ -57,7 +57,7 @@ class Name(Enum): class PotentialProfilePropertySchema(BaseModel): xAxis: AxisSchema = Field(..., title="axis schema") - yAxis: AxisSchema34 = Field(..., title="axis schema") + yAxis: AxisSchema38 = Field(..., title="axis schema") name: Name xDataArray: List[Union[float, List[float]]] """ diff --git a/src/py/mat3ra/esse/models/properties_directory/non_scalar/reaction_energy_profile.py b/src/py/mat3ra/esse/models/properties_directory/non_scalar/reaction_energy_profile.py index 6264f39c4..ceefd09c4 100644 --- a/src/py/mat3ra/esse/models/properties_directory/non_scalar/reaction_energy_profile.py +++ b/src/py/mat3ra/esse/models/properties_directory/non_scalar/reaction_energy_profile.py @@ -25,7 +25,7 @@ class AxisSchema(BaseModel): """ -class Label33(Enum): +class Label37(Enum): energy = "energy" @@ -40,8 +40,8 @@ class Units(Enum): eV_atom = "eV/atom" -class AxisSchema36(BaseModel): - label: Label33 +class AxisSchema40(BaseModel): + label: Label37 """ label of an axis object """ @@ -57,7 +57,7 @@ class Name(Enum): class ReactionEnergyProfilePropertySchema(BaseModel): xAxis: AxisSchema = Field(..., title="axis schema") - yAxis: AxisSchema36 = Field(..., title="axis schema") + yAxis: AxisSchema40 = Field(..., title="axis schema") name: Name xDataArray: List[Union[float, List[float]]] """ diff --git a/src/py/mat3ra/esse/models/properties_directory/non_scalar/total_energy_contributions.py b/src/py/mat3ra/esse/models/properties_directory/non_scalar/total_energy_contributions.py index 95aec07fb..870679926 100644 --- a/src/py/mat3ra/esse/models/properties_directory/non_scalar/total_energy_contributions.py +++ b/src/py/mat3ra/esse/models/properties_directory/non_scalar/total_energy_contributions.py @@ -19,124 +19,124 @@ class ScalarSchema(BaseModel): value: float -class Name841(Enum): +class Name845(Enum): harris_foulkes = "harris_foulkes" class ScalarSchema104(BaseModel): - name: Optional[Name841] = None + name: Optional[Name845] = None value: float -class Name842(Enum): +class Name846(Enum): smearing = "smearing" class ScalarSchema105(BaseModel): - name: Optional[Name842] = None + name: Optional[Name846] = None value: float -class Name843(Enum): +class Name847(Enum): one_electron = "one_electron" class ScalarSchema106(BaseModel): - name: Optional[Name843] = None + name: Optional[Name847] = None value: float -class Name844(Enum): +class Name848(Enum): hartree = "hartree" class ScalarSchema107(BaseModel): - name: Optional[Name844] = None + name: Optional[Name848] = None value: float -class Name845(Enum): +class Name849(Enum): exchange = "exchange" class ScalarSchema108(BaseModel): - name: Optional[Name845] = None + name: Optional[Name849] = None value: float -class Name846(Enum): +class Name850(Enum): exchange_correlation = "exchange_correlation" class ScalarSchema109(BaseModel): - name: Optional[Name846] = None + name: Optional[Name850] = None value: float -class Name847(Enum): +class Name851(Enum): ewald = "ewald" class ScalarSchema110(BaseModel): - name: Optional[Name847] = None + name: Optional[Name851] = None value: float -class Name848(Enum): +class Name852(Enum): alphaZ = "alphaZ" class ScalarSchema111(BaseModel): - name: Optional[Name848] = None + name: Optional[Name852] = None value: float -class Name849(Enum): +class Name853(Enum): atomic_energy = "atomic_energy" class ScalarSchema112(BaseModel): - name: Optional[Name849] = None + name: Optional[Name853] = None value: float -class Name850(Enum): +class Name854(Enum): eigenvalues = "eigenvalues" class ScalarSchema113(BaseModel): - name: Optional[Name850] = None + name: Optional[Name854] = None value: float -class Name851(Enum): +class Name855(Enum): PAW_double_counting_correction_2 = "PAW_double-counting_correction_2" class ScalarSchema114(BaseModel): - name: Optional[Name851] = None + name: Optional[Name855] = None value: float -class Name852(Enum): +class Name856(Enum): PAW_double_counting_correction_3 = "PAW_double-counting_correction_3" class ScalarSchema115(BaseModel): - name: Optional[Name852] = None + name: Optional[Name856] = None value: float -class Name853(Enum): +class Name857(Enum): hartree_fock = "hartree_fock" class ScalarSchema116(BaseModel): - name: Optional[Name853] = None + name: Optional[Name857] = None value: float -class Name854(Enum): +class Name858(Enum): total_energy_contributions = "total_energy_contributions" @@ -208,5 +208,5 @@ class TotalEnergyContributionsPropertySchema(BaseModel): """ hartree-fock contribution """ - name: Name854 + name: Name858 units: Optional[Units] = None diff --git a/src/py/mat3ra/esse/models/properties_directory/non_scalar/vibrational_spectrum.py b/src/py/mat3ra/esse/models/properties_directory/non_scalar/vibrational_spectrum.py index 03f5a76c2..0a70ed2e9 100644 --- a/src/py/mat3ra/esse/models/properties_directory/non_scalar/vibrational_spectrum.py +++ b/src/py/mat3ra/esse/models/properties_directory/non_scalar/vibrational_spectrum.py @@ -32,25 +32,25 @@ class AxisSchema(BaseModel): """ -class Label35(Enum): +class Label39(Enum): Intensity = "Intensity" Absorbance = "Absorbance" Absorption_coefficient = "Absorption coefficient" -class Units383(Enum): +class Units388(Enum): debye_angstrom__2 = "(debye/angstrom)^2" km_mol = "km/mol" m_mol = "m/mol" a_u_ = "a.u." -class AxisSchema38(BaseModel): - label: Label35 +class AxisSchema42(BaseModel): + label: Label39 """ label of an axis object """ - units: Optional[Units383] = None + units: Optional[Units388] = None """ units for an axis """ @@ -62,7 +62,7 @@ class Name(Enum): class VibrationalSpectrumPropertySchema(BaseModel): xAxis: AxisSchema = Field(..., title="axis schema") - yAxis: AxisSchema38 = Field(..., title="axis schema") + yAxis: AxisSchema42 = Field(..., title="axis schema") name: Name xDataArray: List[Union[float, List[float]]] """ diff --git a/src/py/mat3ra/esse/models/properties_directory/non_scalar/wavefunction_amplitude.py b/src/py/mat3ra/esse/models/properties_directory/non_scalar/wavefunction_amplitude.py index 3bad7bd4b..a65c9a92a 100644 --- a/src/py/mat3ra/esse/models/properties_directory/non_scalar/wavefunction_amplitude.py +++ b/src/py/mat3ra/esse/models/properties_directory/non_scalar/wavefunction_amplitude.py @@ -25,12 +25,12 @@ class AxisSchema(BaseModel): """ -class Label37(Enum): +class Label41(Enum): amplitude = "amplitude" -class AxisSchema40(BaseModel): - label: Label37 +class AxisSchema44(BaseModel): + label: Label41 """ label of an axis object """ @@ -46,7 +46,7 @@ class Name(Enum): class WavefunctionAmplitudePropertySchema(BaseModel): xAxis: AxisSchema = Field(..., title="axis schema") - yAxis: AxisSchema40 = Field(..., title="axis schema") + yAxis: AxisSchema44 = Field(..., title="axis schema") name: Name xDataArray: List[Union[float, List[float]]] """ diff --git a/src/py/mat3ra/esse/models/properties_directory/non_scalar/workflow.py b/src/py/mat3ra/esse/models/properties_directory/non_scalar/workflow.py index bfb4cc731..5455e898a 100644 --- a/src/py/mat3ra/esse/models/properties_directory/non_scalar/workflow.py +++ b/src/py/mat3ra/esse/models/properties_directory/non_scalar/workflow.py @@ -159,7 +159,7 @@ class ComputeArgumentsSchema(BaseModel): """ -class Error15(BaseModel): +class Error17(BaseModel): domain: Optional[Domain] = None """ Domain of the error appearance (internal). @@ -178,7 +178,7 @@ class Error15(BaseModel): """ -class ComputeArgumentsSchema15(BaseModel): +class ComputeArgumentsSchema17(BaseModel): queue: Queue """ Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication. @@ -223,7 +223,7 @@ class ComputeArgumentsSchema15(BaseModel): """ Cluster where the job is executed. Optional on create. Required on job submission. """ - errors: Optional[List[Error15]] = None + errors: Optional[List[Error17]] = None """ Computation error. Optional. Appears only if something happens on jobs execution. """ @@ -840,6 +840,10 @@ class NWChemTotalEnergyContextProviderSchema(BaseModel): """ Whether atomic positions are expressed in cartesian coordinates. """ + RESTART: Optional[bool] = None + """ + Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart. + """ class RESTARTMODE(Enum): @@ -1125,7 +1129,7 @@ class CutoffsContextItemSchema(BaseModel): extraData: Dict[str, Any] -class Name890(Enum): +class Name894(Enum): kgrid = "kgrid" qgrid = "qgrid" igrid = "igrid" @@ -1155,7 +1159,7 @@ class GridContextItemSchema(BaseModel): isEdited: bool -class Name891(Enum): +class Name895(Enum): qpath = "qpath" ipath = "ipath" kpath = "kpath" @@ -1371,7 +1375,7 @@ class CollinearMagnetizationContextItemSchema(BaseModel): isEdited: bool -class StartingMagnetizationItem29(BaseModel): +class StartingMagnetizationItem31(BaseModel): index: Optional[int] = Field(None, title="Index") atomicSpecies: Optional[str] = Field(None, title="Atomic species") value: Optional[float] = Field(None, title="Starting magnetization") @@ -1406,7 +1410,7 @@ class FixedMagnetization(BaseModel): class NonCollinearMagnetizationContextProviderSchema(BaseModel): isExistingChargeDensity: Optional[bool] = Field(None, title="Use existing charge density") isStartingMagnetization: Optional[bool] = Field(None, title="Set starting magnetization") - startingMagnetization: Optional[List[StartingMagnetizationItem29]] = None + startingMagnetization: Optional[List[StartingMagnetizationItem31]] = None isArbitrarySpinAngle: Optional[bool] = Field(None, title="Set arbitrary spin angle") isArbitrarySpinDirection: Optional[bool] = Field(None, title="Set arbitrary spin direction") lforcet: Optional[bool] = None @@ -1756,14 +1760,14 @@ class DFTLDAModelSchema(BaseModel): method: BaseMethod = Field(..., title="base method") -class Functional63(Enum): +class Functional66(Enum): pbe = "pbe" pbesol = "pbesol" pw91 = "pw91" other = "other" -class BaseMethod46(BaseModel): +class BaseMethod51(BaseModel): type: str """ general type of this method, eg. `pseudopotential` @@ -1785,17 +1789,17 @@ class BaseMethod46(BaseModel): class DFTGGAModelSchema(BaseModel): type: Literal["dft"] subtype: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - functional: Functional63 - method: BaseMethod46 = Field(..., title="base method") + functional: Functional66 + method: BaseMethod51 = Field(..., title="base method") -class Functional64(Enum): +class Functional67(Enum): b3lyp = "b3lyp" hse06 = "hse06" other = "other" -class BaseMethod47(BaseModel): +class BaseMethod52(BaseModel): type: str """ general type of this method, eg. `pseudopotential` @@ -1817,19 +1821,19 @@ class BaseMethod47(BaseModel): class DFTHybridModelSchema(BaseModel): type: Literal["dft"] subtype: Literal["2#-datamodel-code-generator-#-object-#-special-#"] - functional: Functional64 - method: BaseMethod47 = Field(..., title="base method") + functional: Functional67 + method: BaseMethod52 = Field(..., title="base method") -class Type153(Enum): +class Type156(Enum): ml = "ml" -class Subtype28(Enum): +class Subtype31(Enum): re = "re" -class BaseMethod48(BaseModel): +class BaseMethod53(BaseModel): type: str """ general type of this method, eg. `pseudopotential` @@ -1849,20 +1853,20 @@ class BaseMethod48(BaseModel): class MLModelSchema(BaseModel): - type: Type153 + type: Type156 subtype: Literal["3#-datamodel-code-generator-#-object-#-special-#"] - method: BaseMethod48 = Field(..., title="base method") + method: BaseMethod53 = Field(..., title="base method") -class Type154(Enum): +class Type157(Enum): unknown = "unknown" -class Subtype29(Enum): +class Subtype32(Enum): unknown = "unknown" -class BaseMethod49(BaseModel): +class BaseMethod54(BaseModel): type: str """ general type of this method, eg. `pseudopotential` @@ -1882,12 +1886,12 @@ class BaseMethod49(BaseModel): class UnknownModelSchema(BaseModel): - type: Type154 + type: Type157 subtype: Literal["4#-datamodel-code-generator-#-object-#-special-#"] - method: BaseMethod49 = Field(..., title="base method") + method: BaseMethod54 = Field(..., title="base method") -class ApplicationSchema19(BaseModel): +class ApplicationSchema21(BaseModel): id: Optional[str] = Field(None, alias="_id") """ entity identity @@ -1969,7 +1973,7 @@ class SubworkflowSchema(BaseModel): """ Array of characteristic properties calculated by this subworkflow """ - compute: Optional[ComputeArgumentsSchema15] = Field(None, title="compute arguments schema") + compute: Optional[ComputeArgumentsSchema17] = Field(None, title="compute arguments schema") """ Compute schema """ @@ -1980,7 +1984,7 @@ class SubworkflowSchema(BaseModel): model: Union[DFTLDAModelSchema, DFTGGAModelSchema, DFTHybridModelSchema, MLModelSchema, UnknownModelSchema] = Field( ..., discriminator="subtype", title="Any model schema" ) - application: ApplicationSchema19 = Field(..., title="application schema") + application: ApplicationSchema21 = Field(..., title="application schema") isMultiMaterial: Optional[bool] = None isDraft: Optional[bool] = False """ @@ -1988,7 +1992,7 @@ class SubworkflowSchema(BaseModel): """ -class Input17(BaseModel): +class Input19(BaseModel): target: str """ Name of the target variable to substitute using the values below. e.g. K_POINTS @@ -2077,7 +2081,7 @@ class MapUnitSchema(BaseModel): """ Id of workflow to run inside map """ - input: Input17 + input: Input19 """ Input information for map. """ @@ -2236,7 +2240,7 @@ class SubworkflowUnitSchema(BaseModel): type: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class ErrorUnitSchema14(BaseModel): +class ErrorUnitSchema16(BaseModel): id: Optional[str] = Field(None, alias="_id") """ entity identity @@ -2307,8 +2311,8 @@ class ErrorUnitSchema14(BaseModel): """ -class WorkflowUnitSchema(RootModel[Union[MapUnitSchema, ReduceUnitSchema, SubworkflowUnitSchema, ErrorUnitSchema14]]): - root: Union[MapUnitSchema, ReduceUnitSchema, SubworkflowUnitSchema, ErrorUnitSchema14] = Field( +class WorkflowUnitSchema(RootModel[Union[MapUnitSchema, ReduceUnitSchema, SubworkflowUnitSchema, ErrorUnitSchema16]]): + root: Union[MapUnitSchema, ReduceUnitSchema, SubworkflowUnitSchema, ErrorUnitSchema16] = Field( ..., discriminator="type", title="workflow unit schema" ) diff --git a/src/py/mat3ra/esse/models/properties_directory/scalar/homo_energy.py b/src/py/mat3ra/esse/models/properties_directory/scalar/homo_energy.py index 16cc7667a..5d07e2db9 100644 --- a/src/py/mat3ra/esse/models/properties_directory/scalar/homo_energy.py +++ b/src/py/mat3ra/esse/models/properties_directory/scalar/homo_energy.py @@ -25,11 +25,11 @@ class Units(Enum): eV_atom = "eV/atom" -class Units257(Enum): +class Units259(Enum): eV_A_2 = "eV/A^2" class HOMOEnergyPropertySchema(BaseModel): name: Name - units: Union[Units, Units257] + units: Union[Units, Units259] value: float diff --git a/src/py/mat3ra/esse/models/properties_directory/scalar/interfacial_energy.py b/src/py/mat3ra/esse/models/properties_directory/scalar/interfacial_energy.py index 90f54ec54..59d4491ef 100644 --- a/src/py/mat3ra/esse/models/properties_directory/scalar/interfacial_energy.py +++ b/src/py/mat3ra/esse/models/properties_directory/scalar/interfacial_energy.py @@ -25,11 +25,11 @@ class Units(Enum): eV_atom = "eV/atom" -class Units266(Enum): +class Units270(Enum): eV_A_2 = "eV/A^2" class InterfacialEnergyPropertySchema(BaseModel): name: Name - units: Union[Units, Units266] + units: Union[Units, Units270] value: float diff --git a/src/py/mat3ra/esse/models/properties_directory/scalar/ionization_potential.py b/src/py/mat3ra/esse/models/properties_directory/scalar/ionization_potential.py index 6cde720bc..766d93ede 100644 --- a/src/py/mat3ra/esse/models/properties_directory/scalar/ionization_potential.py +++ b/src/py/mat3ra/esse/models/properties_directory/scalar/ionization_potential.py @@ -25,11 +25,11 @@ class Units(Enum): eV_atom = "eV/atom" -class Units276(Enum): +class Units281(Enum): eV_A_2 = "eV/A^2" class IonizationPotentialScalarPropertySchema(BaseModel): name: Name - units: Union[Units, Units276] + units: Union[Units, Units281] value: float diff --git a/src/py/mat3ra/esse/models/properties_directory/scalar/lumo_energy.py b/src/py/mat3ra/esse/models/properties_directory/scalar/lumo_energy.py index 8ff789694..39a8bfb18 100644 --- a/src/py/mat3ra/esse/models/properties_directory/scalar/lumo_energy.py +++ b/src/py/mat3ra/esse/models/properties_directory/scalar/lumo_energy.py @@ -25,11 +25,11 @@ class Units(Enum): eV_atom = "eV/atom" -class Units279(Enum): +class Units283(Enum): eV_A_2 = "eV/A^2" class LUMOEnergyPropertySchema(BaseModel): name: Name - units: Union[Units, Units279] + units: Union[Units, Units283] value: float diff --git a/src/py/mat3ra/esse/models/properties_directory/scalar/reaction_energy_barrier.py b/src/py/mat3ra/esse/models/properties_directory/scalar/reaction_energy_barrier.py index 96b389348..a976e1492 100644 --- a/src/py/mat3ra/esse/models/properties_directory/scalar/reaction_energy_barrier.py +++ b/src/py/mat3ra/esse/models/properties_directory/scalar/reaction_energy_barrier.py @@ -25,11 +25,11 @@ class Units(Enum): eV_atom = "eV/atom" -class Units324(Enum): +class Units328(Enum): eV_A_2 = "eV/A^2" class ReactionEnergyBarrierPropertySchema(BaseModel): name: Name - units: Union[Units, Units324] + units: Union[Units, Units328] value: float diff --git a/src/py/mat3ra/esse/models/properties_directory/scalar/surface_energy.py b/src/py/mat3ra/esse/models/properties_directory/scalar/surface_energy.py index 5d30e5af5..b0f699da2 100644 --- a/src/py/mat3ra/esse/models/properties_directory/scalar/surface_energy.py +++ b/src/py/mat3ra/esse/models/properties_directory/scalar/surface_energy.py @@ -25,11 +25,11 @@ class Units(Enum): eV_atom = "eV/atom" -class Units364(Enum): +class Units369(Enum): eV_A_2 = "eV/A^2" class SurfaceEnergyPropertySchema(BaseModel): name: Name - units: Union[Units, Units364] + units: Union[Units, Units369] value: float diff --git a/src/py/mat3ra/esse/models/properties_directory/scalar/thermal_correction_to_energy.py b/src/py/mat3ra/esse/models/properties_directory/scalar/thermal_correction_to_energy.py index c8fb95034..e50389edc 100644 --- a/src/py/mat3ra/esse/models/properties_directory/scalar/thermal_correction_to_energy.py +++ b/src/py/mat3ra/esse/models/properties_directory/scalar/thermal_correction_to_energy.py @@ -25,11 +25,11 @@ class Units(Enum): eV_atom = "eV/atom" -class Units367(Enum): +class Units372(Enum): eV_A_2 = "eV/A^2" class ThermalCorrectionToEnergyPropertySchema(BaseModel): name: Name - units: Union[Units, Units367] + units: Union[Units, Units372] value: float diff --git a/src/py/mat3ra/esse/models/properties_directory/scalar/thermal_correction_to_enthalpy.py b/src/py/mat3ra/esse/models/properties_directory/scalar/thermal_correction_to_enthalpy.py index c659aab95..9ecced44e 100644 --- a/src/py/mat3ra/esse/models/properties_directory/scalar/thermal_correction_to_enthalpy.py +++ b/src/py/mat3ra/esse/models/properties_directory/scalar/thermal_correction_to_enthalpy.py @@ -25,11 +25,11 @@ class Units(Enum): eV_atom = "eV/atom" -class Units369(Enum): +class Units374(Enum): eV_A_2 = "eV/A^2" class ThermalCorrectionToEnthalpyPropertySchema(BaseModel): name: Name - units: Union[Units, Units369] + units: Union[Units, Units374] value: float diff --git a/src/py/mat3ra/esse/models/properties_directory/scalar/total_energy.py b/src/py/mat3ra/esse/models/properties_directory/scalar/total_energy.py index 702841046..d175335c7 100644 --- a/src/py/mat3ra/esse/models/properties_directory/scalar/total_energy.py +++ b/src/py/mat3ra/esse/models/properties_directory/scalar/total_energy.py @@ -25,11 +25,11 @@ class Units(Enum): eV_atom = "eV/atom" -class Units371(Enum): +class Units376(Enum): eV_A_2 = "eV/A^2" class TotalEnergyPropertySchema(BaseModel): name: Name - units: Union[Units, Units371] + units: Union[Units, Units376] value: float diff --git a/src/py/mat3ra/esse/models/properties_directory/scalar/valence_band_offset.py b/src/py/mat3ra/esse/models/properties_directory/scalar/valence_band_offset.py index 541dd49ce..31c4450bf 100644 --- a/src/py/mat3ra/esse/models/properties_directory/scalar/valence_band_offset.py +++ b/src/py/mat3ra/esse/models/properties_directory/scalar/valence_band_offset.py @@ -25,11 +25,11 @@ class Units(Enum): eV_atom = "eV/atom" -class Units381(Enum): +class Units386(Enum): eV_A_2 = "eV/A^2" class ValenceBandOffsetPropertySchema(BaseModel): name: Name - units: Union[Units, Units381] + units: Union[Units, Units386] value: float diff --git a/src/py/mat3ra/esse/models/properties_directory/scalar/zero_point_energy.py b/src/py/mat3ra/esse/models/properties_directory/scalar/zero_point_energy.py index 59d6b6f04..1629c3095 100644 --- a/src/py/mat3ra/esse/models/properties_directory/scalar/zero_point_energy.py +++ b/src/py/mat3ra/esse/models/properties_directory/scalar/zero_point_energy.py @@ -25,11 +25,11 @@ class Units(Enum): eV_atom = "eV/atom" -class Units389(Enum): +class Units394(Enum): eV_A_2 = "eV/A^2" class ZeroPointEnergyPropertySchema(BaseModel): name: Name - units: Union[Units, Units389] + units: Union[Units, Units394] value: float diff --git a/src/py/mat3ra/esse/models/properties_directory/structural/molecular_pattern.py b/src/py/mat3ra/esse/models/properties_directory/structural/molecular_pattern.py index c1d6bfa19..cdffe8589 100644 --- a/src/py/mat3ra/esse/models/properties_directory/structural/molecular_pattern.py +++ b/src/py/mat3ra/esse/models/properties_directory/structural/molecular_pattern.py @@ -37,12 +37,12 @@ class FunctionalGroupPatternSchema(BaseModel): """ -class Name661(Enum): +class Name665(Enum): ring = "ring" class RingPatternSchema(BaseModel): - name: Name661 + name: Name665 atoms: Optional[List[ObjectWithId]] = Field(None, title="array of ids") """ array of objects containing integer id each @@ -50,12 +50,12 @@ class RingPatternSchema(BaseModel): isAromatic: Optional[bool] = None -class Name662(Enum): +class Name666(Enum): special_bond = "special_bond" class SpecialBondPatternSchema(BaseModel): - name: Name662 + name: Name666 atoms: Optional[List[ObjectWithId]] = Field(None, title="array of ids") """ array of objects containing integer id each diff --git a/src/py/mat3ra/esse/models/properties_directory/workflow/convergence/ionic.py b/src/py/mat3ra/esse/models/properties_directory/workflow/convergence/ionic.py index b085075d1..0ba727509 100644 --- a/src/py/mat3ra/esse/models/properties_directory/workflow/convergence/ionic.py +++ b/src/py/mat3ra/esse/models/properties_directory/workflow/convergence/ionic.py @@ -18,14 +18,14 @@ class Units(Enum): eV = "eV" -class Units274(Enum): +class Units278(Enum): eV = "eV" Ry = "Ry" hartree = "hartree" class Electronic(BaseModel): - units: Optional[Units274] = None + units: Optional[Units278] = None """ units for force tolerance """ diff --git a/src/py/mat3ra/esse/models/property/holder.py b/src/py/mat3ra/esse/models/property/holder.py index 7ec2158f1..53f1669c1 100644 --- a/src/py/mat3ra/esse/models/property/holder.py +++ b/src/py/mat3ra/esse/models/property/holder.py @@ -2204,6 +2204,10 @@ class NWChemTotalEnergyContextProviderSchema(BaseModel): """ Whether atomic positions are expressed in cartesian coordinates. """ + RESTART: Optional[bool] = None + """ + Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart. + """ class RESTARTMODE(Enum): @@ -3885,12 +3889,204 @@ class FinalStructurePropertySchema(BaseModel): """ +class Label26(Enum): + bias = "bias" + + +class Units256(Enum): + V = "V" + mV = "mV" + + +class AxisSchema29(BaseModel): + label: Label26 + """ + label of an axis object + """ + units: Optional[Units256] = None + """ + units for an axis + """ + + +class Label27(Enum): + response = "response" + + +class Units257(Enum): + km = "km" + m = "m" + cm = "cm" + mm = "mm" + um = "um" + nm = "nm" + angstrom = "angstrom" + a_u_ = "a.u." + bohr = "bohr" + pm = "pm" + + +class AxisSchema30(BaseModel): + label: Label27 + """ + label of an axis object + """ + units: Optional[Units257] = None + """ + units for an axis + """ + + class Name571(Enum): + hysteresis_loop = "hysteresis_loop" + + +class FieldConditionSchema(Enum): + on = "on" + off = "off" + + +class CombinedValueSchema(BaseModel): + value: float + """ + mean over the combined measurements + """ + standardDeviation: float + """ + population standard deviation over the combined measurements (not the standard error of the mean) + """ + count: int + """ + number of measurements combined + """ + + +class CoerciveVoltage(BaseModel): + rising: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ + falling: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ + + +class RemanentResponse(BaseModel): + rising: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ + falling: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ + + +class HysteresisLoopParametersSchema(BaseModel): + imprint: CombinedValueSchema = Field(..., title="Combined value schema") + """ + bias at the centre of the loop: half the sum of the two coercive voltages + """ + coerciveVoltage: CoerciveVoltage + """ + bias at which the response crosses the loop's offset, on the rising and the falling branch + """ + loopWidth: CombinedValueSchema = Field(..., title="Combined value schema") + """ + bias separation of the two coercive voltages + """ + loopHeight: CombinedValueSchema = Field(..., title="Combined value schema") + """ + response separation of the two remanent responses + """ + remanentResponse: RemanentResponse + """ + response at zero bias, on the rising and the falling branch + """ + + +class CoerciveVoltage1(BaseModel): + rising: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ + falling: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ + + +class RemanentResponse1(BaseModel): + rising: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ + falling: CombinedValueSchema = Field(..., title="Combined value schema") + """ + A value combined over repeated measurements: mean, standard deviation, count. Units come from the context the value appears in + """ + + +class HysteresisLoopParametersSchema1(BaseModel): + imprint: CombinedValueSchema = Field(..., title="Combined value schema") + """ + bias at the centre of the loop: half the sum of the two coercive voltages + """ + coerciveVoltage: CoerciveVoltage1 + """ + bias at which the response crosses the loop's offset, on the rising and the falling branch + """ + loopWidth: CombinedValueSchema = Field(..., title="Combined value schema") + """ + bias separation of the two coercive voltages + """ + loopHeight: CombinedValueSchema = Field(..., title="Combined value schema") + """ + response separation of the two remanent responses + """ + remanentResponse: RemanentResponse1 + """ + response at zero bias, on the rising and the falling branch + """ + + +class Parameters(BaseModel): + on: HysteresisLoopParametersSchema = Field(..., title="Hysteresis loop parameters schema") + """ + Parameters read from a hysteresis loop, each combined over the loops measured at one field condition. Voltages are in the loop's xAxis units, responses in its yAxis units + """ + off: HysteresisLoopParametersSchema1 = Field(..., title="Hysteresis loop parameters schema") + """ + Parameters read from a hysteresis loop, each combined over the loops measured at one field condition. Voltages are in the loop's xAxis units, responses in its yAxis units + """ + + +class HysteresisLoopPropertySchema(BaseModel): + xAxis: AxisSchema29 = Field(..., title="axis schema") + yAxis: AxisSchema30 = Field(..., title="axis schema") + name: Literal["41#-datamodel-code-generator-#-object-#-special-#"] + legend: List[FieldConditionSchema] + """ + the field condition of each series in yDataSeries + """ + parameters: Parameters + """ + parameters read from the loop of each field condition; their voltages are in xAxis units and their responses in yAxis units + """ + xDataArray: List[Union[float, List[float]]] + """ + array containing values of x Axis + """ + yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema") + + +class Name572(Enum): jupyter_notebook_endpoint = "jupyter_notebook_endpoint" class JupyterNotebookEndpointPropertySchema(BaseModel): - name: Literal["41#-datamodel-code-generator-#-object-#-special-#"] + name: Literal["42#-datamodel-code-generator-#-object-#-special-#"] host: str port: float token: str @@ -3907,12 +4103,27 @@ class Info(BaseModel): """ +class Info1(BaseModel): + measurementId: str + """ + Measurement's identity + """ + sampleId: Optional[str] = None + """ + Identity of the sample the result is about + """ + unitId: str + """ + Id of the unit that extracted the result + """ + + class Source61(BaseModel): type: str """ Type of the material property's source. """ - info: Info + info: Union[Info, Info1] class Precision(BaseModel): @@ -3972,6 +4183,7 @@ class PropertyHolderSchema(BaseModel): ConvergenceIonicPropertySchema, IsRelaxedPropertySchema, FinalStructurePropertySchema, + HysteresisLoopPropertySchema, JupyterNotebookEndpointPropertySchema, ] = Field(..., discriminator="name") """ diff --git a/src/py/mat3ra/esse/models/property/proto_holder.py b/src/py/mat3ra/esse/models/property/proto_holder.py index f29081e0a..23a12e4ad 100644 --- a/src/py/mat3ra/esse/models/property/proto_holder.py +++ b/src/py/mat3ra/esse/models/property/proto_holder.py @@ -33,7 +33,7 @@ class AtomicConstraintsPropertySchema(BaseModel): """ -class Name727(Enum): +class Name731(Enum): boundary_conditions = "boundary_conditions" @@ -45,7 +45,7 @@ class Type(Enum): class BoundaryConditionsPropertySchema(BaseModel): - name: Name727 + name: Name731 type: Optional[Type] = "pbc" """ If assume_isolated = 'esm', determines the boundary conditions used for either side of the slab. diff --git a/src/py/mat3ra/esse/models/property/source.py b/src/py/mat3ra/esse/models/property/source.py index 7255399e3..4817fcd7a 100644 --- a/src/py/mat3ra/esse/models/property/source.py +++ b/src/py/mat3ra/esse/models/property/source.py @@ -62,7 +62,7 @@ class LocationSchema(BaseModel): """ -class Type135(Enum): +class Type138(Enum): literature = "literature" @@ -72,7 +72,7 @@ class PagesSchema(BaseModel): class LiteratureReferenceSchema(BaseModel): - type: Optional[Type135] = None + type: Optional[Type138] = None doi: Optional[str] = None """ Digital Object Identifier of the reference. diff --git a/src/py/mat3ra/esse/models/sample.py b/src/py/mat3ra/esse/models/sample.py new file mode 100644 index 000000000..49d4a0427 --- /dev/null +++ b/src/py/mat3ra/esse/models/sample.py @@ -0,0 +1,61 @@ +# generated by datamodel-codegen: +# filename: sample.json +# version: 0.28.5 + +from __future__ import annotations + +from enum import Enum +from typing import Any, Dict, List, Optional + +from pydantic import BaseModel, Field + + +class Units(Enum): + km = "km" + m = "m" + cm = "cm" + mm = "mm" + um = "um" + nm = "nm" + angstrom = "angstrom" + a_u_ = "a.u." + bohr = "bohr" + pm = "pm" + + +class Position(BaseModel): + coordinates: List[float] = Field(..., max_length=2, min_length=2, title="array of 2 number elements schema") + units: Units + + +class SampleSchema(BaseModel): + label: str + """ + Identity of the sample on its substrate, e.g. the grid label r0c00 of a contact pad + """ + position: Position + """ + Planned position of the sample in the substrate frame + """ + id: Optional[str] = Field(None, alias="_id") + """ + entity identity + """ + slug: Optional[str] = None + """ + entity slug + """ + systemName: Optional[str] = None + schemaVersion: Optional[str] = "2022.8.16" + """ + entity's schema version. Used to distinct between different schemas. + """ + name: str + """ + entity name + """ + isDefault: Optional[bool] = False + """ + Identifies that entity is defaultable + """ + metadata: Optional[Dict[str, Any]] = None diff --git a/src/py/mat3ra/esse/models/software_directory/modeling/unit/execution.py b/src/py/mat3ra/esse/models/software_directory/modeling/unit/execution.py index 07a0c0072..dd1312a83 100644 --- a/src/py/mat3ra/esse/models/software_directory/modeling/unit/execution.py +++ b/src/py/mat3ra/esse/models/software_directory/modeling/unit/execution.py @@ -334,6 +334,10 @@ class NWChemTotalEnergyContextProviderSchema(BaseModel): """ Whether atomic positions are expressed in cartesian coordinates. """ + RESTART: Optional[bool] = None + """ + Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart. + """ class RESTARTMODE(Enum): diff --git a/src/py/mat3ra/esse/models/software_directory/scripting/unit/execution.py b/src/py/mat3ra/esse/models/software_directory/scripting/unit/execution.py index a6e948040..28e29753f 100644 --- a/src/py/mat3ra/esse/models/software_directory/scripting/unit/execution.py +++ b/src/py/mat3ra/esse/models/software_directory/scripting/unit/execution.py @@ -334,6 +334,10 @@ class NWChemTotalEnergyContextProviderSchema(BaseModel): """ Whether atomic positions are expressed in cartesian coordinates. """ + RESTART: Optional[bool] = None + """ + Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart. + """ class RESTARTMODE(Enum): diff --git a/src/py/mat3ra/esse/models/workflow/__init__.py b/src/py/mat3ra/esse/models/workflow/__init__.py index 747548be6..74e7d348d 100644 --- a/src/py/mat3ra/esse/models/workflow/__init__.py +++ b/src/py/mat3ra/esse/models/workflow/__init__.py @@ -155,7 +155,7 @@ class ComputeArgumentsSchema(BaseModel): """ -class Error13(BaseModel): +class Error15(BaseModel): domain: Optional[Domain] = None """ Domain of the error appearance (internal). @@ -174,7 +174,7 @@ class Error13(BaseModel): """ -class ComputeArgumentsSchema13(BaseModel): +class ComputeArgumentsSchema15(BaseModel): queue: Queue """ Name of the submission queues: https://docs.mat3ra.com/infrastructure/resource/queues/. Below enums are for Azure, then AWS circa 2022-08, hence the duplication. @@ -219,7 +219,7 @@ class ComputeArgumentsSchema13(BaseModel): """ Cluster where the job is executed. Optional on create. Required on job submission. """ - errors: Optional[List[Error13]] = None + errors: Optional[List[Error15]] = None """ Computation error. Optional. Appears only if something happens on jobs execution. """ @@ -836,6 +836,10 @@ class NWChemTotalEnergyContextProviderSchema(BaseModel): """ Whether atomic positions are expressed in cartesian coordinates. """ + RESTART: Optional[bool] = None + """ + Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart. + """ class RESTARTMODE(Enum): @@ -1151,7 +1155,7 @@ class GridContextItemSchema(BaseModel): isEdited: bool -class Name888(Enum): +class Name892(Enum): qpath = "qpath" ipath = "ipath" kpath = "kpath" @@ -1367,7 +1371,7 @@ class CollinearMagnetizationContextItemSchema(BaseModel): isEdited: bool -class StartingMagnetizationItem27(BaseModel): +class StartingMagnetizationItem29(BaseModel): index: Optional[int] = Field(None, title="Index") atomicSpecies: Optional[str] = Field(None, title="Atomic species") value: Optional[float] = Field(None, title="Starting magnetization") @@ -1402,7 +1406,7 @@ class FixedMagnetization(BaseModel): class NonCollinearMagnetizationContextProviderSchema(BaseModel): isExistingChargeDensity: Optional[bool] = Field(None, title="Use existing charge density") isStartingMagnetization: Optional[bool] = Field(None, title="Set starting magnetization") - startingMagnetization: Optional[List[StartingMagnetizationItem27]] = None + startingMagnetization: Optional[List[StartingMagnetizationItem29]] = None isArbitrarySpinAngle: Optional[bool] = Field(None, title="Set arbitrary spin angle") isArbitrarySpinDirection: Optional[bool] = Field(None, title="Set arbitrary spin direction") lforcet: Optional[bool] = None @@ -1752,14 +1756,14 @@ class DFTLDAModelSchema(BaseModel): method: BaseMethod = Field(..., title="base method") -class Functional60(Enum): +class Functional63(Enum): pbe = "pbe" pbesol = "pbesol" pw91 = "pw91" other = "other" -class BaseMethod41(BaseModel): +class BaseMethod46(BaseModel): type: str """ general type of this method, eg. `pseudopotential` @@ -1781,17 +1785,17 @@ class BaseMethod41(BaseModel): class DFTGGAModelSchema(BaseModel): type: Literal["dft"] subtype: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - functional: Functional60 - method: BaseMethod41 = Field(..., title="base method") + functional: Functional63 + method: BaseMethod46 = Field(..., title="base method") -class Functional61(Enum): +class Functional64(Enum): b3lyp = "b3lyp" hse06 = "hse06" other = "other" -class BaseMethod42(BaseModel): +class BaseMethod47(BaseModel): type: str """ general type of this method, eg. `pseudopotential` @@ -1813,19 +1817,19 @@ class BaseMethod42(BaseModel): class DFTHybridModelSchema(BaseModel): type: Literal["dft"] subtype: Literal["2#-datamodel-code-generator-#-object-#-special-#"] - functional: Functional61 - method: BaseMethod42 = Field(..., title="base method") + functional: Functional64 + method: BaseMethod47 = Field(..., title="base method") -class Type150(Enum): +class Type153(Enum): ml = "ml" -class Subtype25(Enum): +class Subtype28(Enum): re = "re" -class BaseMethod43(BaseModel): +class BaseMethod48(BaseModel): type: str """ general type of this method, eg. `pseudopotential` @@ -1845,20 +1849,20 @@ class BaseMethod43(BaseModel): class MLModelSchema(BaseModel): - type: Type150 + type: Type153 subtype: Literal["3#-datamodel-code-generator-#-object-#-special-#"] - method: BaseMethod43 = Field(..., title="base method") + method: BaseMethod48 = Field(..., title="base method") -class Type151(Enum): +class Type154(Enum): unknown = "unknown" -class Subtype26(Enum): +class Subtype29(Enum): unknown = "unknown" -class BaseMethod44(BaseModel): +class BaseMethod49(BaseModel): type: str """ general type of this method, eg. `pseudopotential` @@ -1878,12 +1882,12 @@ class BaseMethod44(BaseModel): class UnknownModelSchema(BaseModel): - type: Type151 + type: Type154 subtype: Literal["4#-datamodel-code-generator-#-object-#-special-#"] - method: BaseMethod44 = Field(..., title="base method") + method: BaseMethod49 = Field(..., title="base method") -class ApplicationSchema17(BaseModel): +class ApplicationSchema19(BaseModel): id: Optional[str] = Field(None, alias="_id") """ entity identity @@ -1965,7 +1969,7 @@ class SubworkflowSchema(BaseModel): """ Array of characteristic properties calculated by this subworkflow """ - compute: Optional[ComputeArgumentsSchema13] = Field(None, title="compute arguments schema") + compute: Optional[ComputeArgumentsSchema15] = Field(None, title="compute arguments schema") """ Compute schema """ @@ -1976,7 +1980,7 @@ class SubworkflowSchema(BaseModel): model: Union[DFTLDAModelSchema, DFTGGAModelSchema, DFTHybridModelSchema, MLModelSchema, UnknownModelSchema] = Field( ..., discriminator="subtype", title="Any model schema" ) - application: ApplicationSchema17 = Field(..., title="application schema") + application: ApplicationSchema19 = Field(..., title="application schema") isMultiMaterial: Optional[bool] = None isDraft: Optional[bool] = False """ @@ -1984,7 +1988,7 @@ class SubworkflowSchema(BaseModel): """ -class Input15(BaseModel): +class Input17(BaseModel): target: str """ Name of the target variable to substitute using the values below. e.g. K_POINTS @@ -2073,7 +2077,7 @@ class MapUnitSchema(BaseModel): """ Id of workflow to run inside map """ - input: Input15 + input: Input17 """ Input information for map. """ @@ -2232,7 +2236,7 @@ class SubworkflowUnitSchema(BaseModel): type: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class ErrorUnitSchema12(BaseModel): +class ErrorUnitSchema14(BaseModel): id: Optional[str] = Field(None, alias="_id") """ entity identity @@ -2303,8 +2307,8 @@ class ErrorUnitSchema12(BaseModel): """ -class WorkflowUnitSchema(RootModel[Union[MapUnitSchema, ReduceUnitSchema, SubworkflowUnitSchema, ErrorUnitSchema12]]): - root: Union[MapUnitSchema, ReduceUnitSchema, SubworkflowUnitSchema, ErrorUnitSchema12] = Field( +class WorkflowUnitSchema(RootModel[Union[MapUnitSchema, ReduceUnitSchema, SubworkflowUnitSchema, ErrorUnitSchema14]]): + root: Union[MapUnitSchema, ReduceUnitSchema, SubworkflowUnitSchema, ErrorUnitSchema14] = Field( ..., discriminator="type", title="workflow unit schema" ) diff --git a/src/py/mat3ra/esse/models/workflow/base.py b/src/py/mat3ra/esse/models/workflow/base.py index a5e69d9bc..5f81790eb 100644 --- a/src/py/mat3ra/esse/models/workflow/base.py +++ b/src/py/mat3ra/esse/models/workflow/base.py @@ -762,6 +762,10 @@ class NWChemTotalEnergyContextProviderSchema(BaseModel): """ Whether atomic positions are expressed in cartesian coordinates. """ + RESTART: Optional[bool] = None + """ + Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart. + """ class RESTARTMODE(Enum): diff --git a/src/py/mat3ra/esse/models/workflow/subworkflow/__init__.py b/src/py/mat3ra/esse/models/workflow/subworkflow/__init__.py index f4a91be49..b5a135ecc 100644 --- a/src/py/mat3ra/esse/models/workflow/subworkflow/__init__.py +++ b/src/py/mat3ra/esse/models/workflow/subworkflow/__init__.py @@ -762,6 +762,10 @@ class NWChemTotalEnergyContextProviderSchema(BaseModel): """ Whether atomic positions are expressed in cartesian coordinates. """ + RESTART: Optional[bool] = None + """ + Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart. + """ class RESTARTMODE(Enum): @@ -1077,7 +1081,7 @@ class GridContextItemSchema(BaseModel): isEdited: bool -class Name826(Enum): +class Name830(Enum): qpath = "qpath" ipath = "ipath" kpath = "kpath" @@ -1293,7 +1297,7 @@ class CollinearMagnetizationContextItemSchema(BaseModel): isEdited: bool -class StartingMagnetizationItem23(BaseModel): +class StartingMagnetizationItem25(BaseModel): index: Optional[int] = Field(None, title="Index") atomicSpecies: Optional[str] = Field(None, title="Atomic species") value: Optional[float] = Field(None, title="Starting magnetization") @@ -1328,7 +1332,7 @@ class FixedMagnetization(BaseModel): class NonCollinearMagnetizationContextProviderSchema(BaseModel): isExistingChargeDensity: Optional[bool] = Field(None, title="Use existing charge density") isStartingMagnetization: Optional[bool] = Field(None, title="Set starting magnetization") - startingMagnetization: Optional[List[StartingMagnetizationItem23]] = None + startingMagnetization: Optional[List[StartingMagnetizationItem25]] = None isArbitrarySpinAngle: Optional[bool] = Field(None, title="Set arbitrary spin angle") isArbitrarySpinDirection: Optional[bool] = Field(None, title="Set arbitrary spin direction") lforcet: Optional[bool] = None @@ -1678,14 +1682,14 @@ class DFTLDAModelSchema(BaseModel): method: BaseMethod = Field(..., title="base method") -class Functional57(Enum): +class Functional60(Enum): pbe = "pbe" pbesol = "pbesol" pw91 = "pw91" other = "other" -class BaseMethod35(BaseModel): +class BaseMethod40(BaseModel): type: str """ general type of this method, eg. `pseudopotential` @@ -1707,17 +1711,17 @@ class BaseMethod35(BaseModel): class DFTGGAModelSchema(BaseModel): type: Literal["dft"] subtype: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - functional: Functional57 - method: BaseMethod35 = Field(..., title="base method") + functional: Functional60 + method: BaseMethod40 = Field(..., title="base method") -class Functional58(Enum): +class Functional61(Enum): b3lyp = "b3lyp" hse06 = "hse06" other = "other" -class BaseMethod36(BaseModel): +class BaseMethod41(BaseModel): type: str """ general type of this method, eg. `pseudopotential` @@ -1739,19 +1743,19 @@ class BaseMethod36(BaseModel): class DFTHybridModelSchema(BaseModel): type: Literal["dft"] subtype: Literal["2#-datamodel-code-generator-#-object-#-special-#"] - functional: Functional58 - method: BaseMethod36 = Field(..., title="base method") + functional: Functional61 + method: BaseMethod41 = Field(..., title="base method") -class Type141(Enum): +class Type144(Enum): ml = "ml" -class Subtype20(Enum): +class Subtype23(Enum): re = "re" -class BaseMethod37(BaseModel): +class BaseMethod42(BaseModel): type: str """ general type of this method, eg. `pseudopotential` @@ -1771,20 +1775,20 @@ class BaseMethod37(BaseModel): class MLModelSchema(BaseModel): - type: Type141 + type: Type144 subtype: Literal["3#-datamodel-code-generator-#-object-#-special-#"] - method: BaseMethod37 = Field(..., title="base method") + method: BaseMethod42 = Field(..., title="base method") -class Type142(Enum): +class Type145(Enum): unknown = "unknown" -class Subtype21(Enum): +class Subtype24(Enum): unknown = "unknown" -class BaseMethod38(BaseModel): +class BaseMethod43(BaseModel): type: str """ general type of this method, eg. `pseudopotential` @@ -1804,12 +1808,12 @@ class BaseMethod38(BaseModel): class UnknownModelSchema(BaseModel): - type: Type142 + type: Type145 subtype: Literal["4#-datamodel-code-generator-#-object-#-special-#"] - method: BaseMethod38 = Field(..., title="base method") + method: BaseMethod43 = Field(..., title="base method") -class ApplicationSchema14(BaseModel): +class ApplicationSchema16(BaseModel): id: Optional[str] = Field(None, alias="_id") """ entity identity @@ -1902,7 +1906,7 @@ class SubworkflowSchema(BaseModel): model: Union[DFTLDAModelSchema, DFTGGAModelSchema, DFTHybridModelSchema, MLModelSchema, UnknownModelSchema] = Field( ..., discriminator="subtype", title="Any model schema" ) - application: ApplicationSchema14 = Field(..., title="application schema") + application: ApplicationSchema16 = Field(..., title="application schema") isMultiMaterial: Optional[bool] = None isDraft: Optional[bool] = False """ diff --git a/src/py/mat3ra/esse/models/workflow/subworkflow/mixin.py b/src/py/mat3ra/esse/models/workflow/subworkflow/mixin.py index 482098ff6..7b0d60bf6 100644 --- a/src/py/mat3ra/esse/models/workflow/subworkflow/mixin.py +++ b/src/py/mat3ra/esse/models/workflow/subworkflow/mixin.py @@ -762,6 +762,10 @@ class NWChemTotalEnergyContextProviderSchema(BaseModel): """ Whether atomic positions are expressed in cartesian coordinates. """ + RESTART: Optional[bool] = None + """ + Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart. + """ class RESTARTMODE(Enum): @@ -1077,7 +1081,7 @@ class GridContextItemSchema(BaseModel): isEdited: bool -class Name659(Enum): +class Name663(Enum): qpath = "qpath" ipath = "ipath" kpath = "kpath" @@ -1293,7 +1297,7 @@ class CollinearMagnetizationContextItemSchema(BaseModel): isEdited: bool -class StartingMagnetizationItem19(BaseModel): +class StartingMagnetizationItem21(BaseModel): index: Optional[int] = Field(None, title="Index") atomicSpecies: Optional[str] = Field(None, title="Atomic species") value: Optional[float] = Field(None, title="Starting magnetization") @@ -1328,7 +1332,7 @@ class FixedMagnetization(BaseModel): class NonCollinearMagnetizationContextProviderSchema(BaseModel): isExistingChargeDensity: Optional[bool] = Field(None, title="Use existing charge density") isStartingMagnetization: Optional[bool] = Field(None, title="Set starting magnetization") - startingMagnetization: Optional[List[StartingMagnetizationItem19]] = None + startingMagnetization: Optional[List[StartingMagnetizationItem21]] = None isArbitrarySpinAngle: Optional[bool] = Field(None, title="Set arbitrary spin angle") isArbitrarySpinDirection: Optional[bool] = Field(None, title="Set arbitrary spin direction") lforcet: Optional[bool] = None @@ -1678,14 +1682,14 @@ class DFTLDAModelSchema(BaseModel): method: BaseMethod = Field(..., title="base method") -class Functional49(Enum): +class Functional52(Enum): pbe = "pbe" pbesol = "pbesol" pw91 = "pw91" other = "other" -class BaseMethod28(BaseModel): +class BaseMethod33(BaseModel): type: str """ general type of this method, eg. `pseudopotential` @@ -1707,17 +1711,17 @@ class BaseMethod28(BaseModel): class DFTGGAModelSchema(BaseModel): type: Literal["dft"] subtype: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - functional: Functional49 - method: BaseMethod28 = Field(..., title="base method") + functional: Functional52 + method: BaseMethod33 = Field(..., title="base method") -class Functional50(Enum): +class Functional53(Enum): b3lyp = "b3lyp" hse06 = "hse06" other = "other" -class BaseMethod29(BaseModel): +class BaseMethod34(BaseModel): type: str """ general type of this method, eg. `pseudopotential` @@ -1739,19 +1743,19 @@ class BaseMethod29(BaseModel): class DFTHybridModelSchema(BaseModel): type: Literal["dft"] subtype: Literal["2#-datamodel-code-generator-#-object-#-special-#"] - functional: Functional50 - method: BaseMethod29 = Field(..., title="base method") + functional: Functional53 + method: BaseMethod34 = Field(..., title="base method") -class Type107(Enum): +class Type110(Enum): ml = "ml" -class Subtype14(Enum): +class Subtype17(Enum): re = "re" -class BaseMethod30(BaseModel): +class BaseMethod35(BaseModel): type: str """ general type of this method, eg. `pseudopotential` @@ -1771,20 +1775,20 @@ class BaseMethod30(BaseModel): class MLModelSchema(BaseModel): - type: Type107 + type: Type110 subtype: Literal["3#-datamodel-code-generator-#-object-#-special-#"] - method: BaseMethod30 = Field(..., title="base method") + method: BaseMethod35 = Field(..., title="base method") -class Type108(Enum): +class Type111(Enum): unknown = "unknown" -class Subtype15(Enum): +class Subtype18(Enum): unknown = "unknown" -class BaseMethod31(BaseModel): +class BaseMethod36(BaseModel): type: str """ general type of this method, eg. `pseudopotential` @@ -1804,12 +1808,12 @@ class BaseMethod31(BaseModel): class UnknownModelSchema(BaseModel): - type: Type108 + type: Type111 subtype: Literal["4#-datamodel-code-generator-#-object-#-special-#"] - method: BaseMethod31 = Field(..., title="base method") + method: BaseMethod36 = Field(..., title="base method") -class ApplicationSchema12(BaseModel): +class ApplicationSchema14(BaseModel): id: Optional[str] = Field(None, alias="_id") """ entity identity @@ -1885,7 +1889,7 @@ class SubworkflowMixinSchema(BaseModel): model: Union[DFTLDAModelSchema, DFTGGAModelSchema, DFTHybridModelSchema, MLModelSchema, UnknownModelSchema] = Field( ..., discriminator="subtype", title="Any model schema" ) - application: ApplicationSchema12 = Field(..., title="application schema") + application: ApplicationSchema14 = Field(..., title="application schema") isMultiMaterial: Optional[bool] = None isDraft: Optional[bool] = False """ diff --git a/src/py/mat3ra/esse/models/workflow/subworkflow/unit.py b/src/py/mat3ra/esse/models/workflow/subworkflow/unit.py index 08ed2ce1c..b4239744c 100644 --- a/src/py/mat3ra/esse/models/workflow/subworkflow/unit.py +++ b/src/py/mat3ra/esse/models/workflow/subworkflow/unit.py @@ -617,6 +617,10 @@ class NWChemTotalEnergyContextProviderSchema(BaseModel): """ Whether atomic positions are expressed in cartesian coordinates. """ + RESTART: Optional[bool] = None + """ + Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart. + """ class RESTARTMODE(Enum): @@ -932,7 +936,7 @@ class GridContextItemSchema(BaseModel): isEdited: bool -class Name857(Enum): +class Name861(Enum): qpath = "qpath" ipath = "ipath" kpath = "kpath" @@ -1148,7 +1152,7 @@ class CollinearMagnetizationContextItemSchema(BaseModel): isEdited: bool -class StartingMagnetizationItem25(BaseModel): +class StartingMagnetizationItem27(BaseModel): index: Optional[int] = Field(None, title="Index") atomicSpecies: Optional[str] = Field(None, title="Atomic species") value: Optional[float] = Field(None, title="Starting magnetization") @@ -1183,7 +1187,7 @@ class FixedMagnetization(BaseModel): class NonCollinearMagnetizationContextProviderSchema(BaseModel): isExistingChargeDensity: Optional[bool] = Field(None, title="Use existing charge density") isStartingMagnetization: Optional[bool] = Field(None, title="Set starting magnetization") - startingMagnetization: Optional[List[StartingMagnetizationItem25]] = None + startingMagnetization: Optional[List[StartingMagnetizationItem27]] = None isArbitrarySpinAngle: Optional[bool] = Field(None, title="Set arbitrary spin angle") isArbitrarySpinDirection: Optional[bool] = Field(None, title="Set arbitrary spin direction") lforcet: Optional[bool] = None diff --git a/src/py/mat3ra/esse/models/workflow/unit/context/item/__init__.py b/src/py/mat3ra/esse/models/workflow/unit/context/item/__init__.py index 1de5ee3cd..cdea0244c 100644 --- a/src/py/mat3ra/esse/models/workflow/unit/context/item/__init__.py +++ b/src/py/mat3ra/esse/models/workflow/unit/context/item/__init__.py @@ -55,6 +55,10 @@ class NWChemTotalEnergyContextProviderSchema(BaseModel): """ Whether atomic positions are expressed in cartesian coordinates. """ + RESTART: Optional[bool] = None + """ + Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart. + """ class RESTARTMODE(Enum): @@ -370,7 +374,7 @@ class GridContextItemSchema(BaseModel): isEdited: bool -class Name608(Enum): +class Name610(Enum): qpath = "qpath" ipath = "ipath" kpath = "kpath" diff --git a/src/py/mat3ra/esse/models/workflow/unit/context/item/input.py b/src/py/mat3ra/esse/models/workflow/unit/context/item/input.py index 9c38bc51b..c4ed4a8c8 100644 --- a/src/py/mat3ra/esse/models/workflow/unit/context/item/input.py +++ b/src/py/mat3ra/esse/models/workflow/unit/context/item/input.py @@ -55,6 +55,10 @@ class NWChemTotalEnergyContextProviderSchema(BaseModel): """ Whether atomic positions are expressed in cartesian coordinates. """ + RESTART: Optional[bool] = None + """ + Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart. + """ class RESTARTMODE(Enum): diff --git a/src/py/mat3ra/esse/models/workflow/unit/execution.py b/src/py/mat3ra/esse/models/workflow/unit/execution.py index 344efeff6..d6eb15560 100644 --- a/src/py/mat3ra/esse/models/workflow/unit/execution.py +++ b/src/py/mat3ra/esse/models/workflow/unit/execution.py @@ -291,6 +291,10 @@ class NWChemTotalEnergyContextProviderSchema(BaseModel): """ Whether atomic positions are expressed in cartesian coordinates. """ + RESTART: Optional[bool] = None + """ + Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart. + """ class RESTARTMODE(Enum): diff --git a/src/py/mat3ra/esse/models/workflow/unit/mixins/execution.py b/src/py/mat3ra/esse/models/workflow/unit/mixins/execution.py index a4dfb2bd2..18461d37d 100644 --- a/src/py/mat3ra/esse/models/workflow/unit/mixins/execution.py +++ b/src/py/mat3ra/esse/models/workflow/unit/mixins/execution.py @@ -277,6 +277,10 @@ class NWChemTotalEnergyContextProviderSchema(BaseModel): """ Whether atomic positions are expressed in cartesian coordinates. """ + RESTART: Optional[bool] = None + """ + Whether to continue from the RTDB of a previous run in the same working directory, taking its geometry, instead of declaring one. Optional: absent means no restart. + """ class RESTARTMODE(Enum): diff --git a/tests/js/entityGraph.tests.ts b/tests/js/entityGraph.tests.ts index dc2e6b369..682952319 100644 --- a/tests/js/entityGraph.tests.ts +++ b/tests/js/entityGraph.tests.ts @@ -18,22 +18,22 @@ import { * change on purpose: update the numbers in the same commit that changes the schemas, * and keep plan/context/2026-08-16-schema-graph-measurements.md in step. */ -const EXPECTED_NODE_COUNT = 564; -const EXPECTED_EDGE_COUNT = 917; -const EXPECTED_EDGE_COUNTS_BY_KIND = { extends: 372, contains: 375, variant: 170 }; -const EXPECTED_SAME_DOCUMENT_REFS = 20; +const EXPECTED_NODE_COUNT = 573; +const EXPECTED_EDGE_COUNT = 941; +const EXPECTED_EDGE_COUNTS_BY_KIND = { extends: 381, contains: 387, variant: 173 }; +const EXPECTED_SAME_DOCUMENT_REFS = 22; const EXPECTED_LAYER_COUNTS = { abstract: 9, "application-parsing": 17, category: 152, definition: 4, - directory: 156, - entity: 11, - "entity-component": 106, + directory: 157, + entity: 13, + "entity-component": 108, "in-memory-entity": 7, primitive: 23, - reference: 10, - reusable: 31, + reference: 11, + reusable: 34, system: 38, }; @@ -97,18 +97,16 @@ describe("buildEntityGraph", () => { ).to.be.true; // The property holder is the corpus' widest union: every property type is a - // variant of its `data` field, on top of one mixin and one reference. + // variant of its `data` field, and its `source.info` is a variant of the two + // reference kinds (exabyte, external), on top of one mixin. const holderEdges = edgesFrom("property/holder"); - expect(holderEdges).to.have.lengthOf(44); - expect(holderEdges.filter((edge) => edge.kind === "variant")).to.have.lengthOf(42); - expect( - holderEdges - .filter((edge) => edge.kind === "variant") - .every((edge) => edge.label === "data"), - "every variant hangs off the data property", - ).to.be.true; + expect(holderEdges).to.have.lengthOf(46); + const holderVariants = holderEdges.filter((edge) => edge.kind === "variant"); + expect(holderVariants).to.have.lengthOf(45); + expect(holderVariants.filter((edge) => edge.label === "data")).to.have.lengthOf(43); + expect(holderVariants.filter((edge) => edge.label === "info")).to.have.lengthOf(2); expect(holderEdges.filter((edge) => edge.kind === "extends")).to.have.lengthOf(1); - expect(holderEdges.filter((edge) => edge.kind === "contains")).to.have.lengthOf(1); + expect(holderEdges.filter((edge) => edge.kind === "contains")).to.be.empty; }); it("carries manifest flags onto property nodes", () => { @@ -176,7 +174,7 @@ describe("buildEntityGraph", () => { }); it("reports example coverage as a warning", () => { - expect(graph.meta.schemasWithExample).to.equal(209); + expect(graph.meta.schemasWithExample).to.equal(215); expect(lint.warnings.some((warning) => warning.startsWith("L9 example coverage"))).to.be .true; });